trcc-linux 9.7.9__tar.gz → 9.7.10__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 (1013) hide show
  1. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/PKG-INFO +1 -1
  2. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/pyproject.toml +1 -1
  3. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/__version__.py +1 -1
  4. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/_hotplug.py +7 -0
  5. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/_udev.py +20 -4
  6. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/app.py +16 -3
  7. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/commands/_helpers.py +21 -5
  8. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/commands/device.py +3 -1
  9. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/commands/led.py +6 -0
  10. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/commands/theme.py +165 -59
  11. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/results.py +14 -1
  12. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/_clock.py +17 -0
  13. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/overlay.py +12 -7
  14. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/theme.py +29 -6
  15. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/cli/display.py +15 -1
  16. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/cli/main.py +12 -0
  17. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/_ui_state.py +7 -21
  18. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/lcd_handler.py +28 -21
  19. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/trcc_app.py +20 -11
  20. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_theme_local.py +37 -93
  21. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_architecture_boundaries.py +122 -0
  22. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_cli_commands.py +33 -3
  23. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_orientation_reload.py +42 -0
  24. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_overlay_clock.py +27 -0
  25. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_theme_persistence.py +287 -40
  26. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_udev.py +32 -6
  27. trcc_linux-9.7.10/tests/ui/presentation/test_theme_local_binding.py +59 -0
  28. trcc_linux-9.7.9/tests/ui/presentation/test_theme_local_binding.py +0 -31
  29. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/.gitignore +0 -0
  30. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/LICENSE +0 -0
  31. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/README.md +0 -0
  32. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/__init__.py +0 -0
  33. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/__main__.py +0 -0
  34. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/_boot.py +0 -0
  35. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/_entry.py +0 -0
  36. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/__init__.py +0 -0
  37. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/device/__init__.py +0 -0
  38. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/device/_pyusb_find.py +0 -0
  39. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/device/bulk_lcd.py +0 -0
  40. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/device/hid_lcd.py +0 -0
  41. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/device/led.py +0 -0
  42. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/device/ly_lcd.py +0 -0
  43. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/device/scsi_lcd.py +0 -0
  44. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/device/transport.py +0 -0
  45. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/device/usb_bot_scsi.py +0 -0
  46. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/diagnostics/__init__.py +0 -0
  47. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/diagnostics/adapter.py +0 -0
  48. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/diagnostics/debug_report.py +0 -0
  49. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/diagnostics/doctor.py +0 -0
  50. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/diagnostics/health.py +0 -0
  51. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/infra/__init__.py +0 -0
  52. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/infra/logging.py +0 -0
  53. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/infra/network.py +0 -0
  54. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/infra/send_scheduler.py +0 -0
  55. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/infra/sysinfo_config.py +0 -0
  56. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/render/__init__.py +0 -0
  57. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/render/qt.py +0 -0
  58. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/repo/__init__.py +0 -0
  59. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/repo/data_install.py +0 -0
  60. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/repo/github_releases.py +0 -0
  61. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/repo/http.py +0 -0
  62. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/screencast/__init__.py +0 -0
  63. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/screencast/qt.py +0 -0
  64. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/__init__.py +0 -0
  65. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/_hwinfo.py +0 -0
  66. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/_lhm.py +0 -0
  67. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/_macos_hid.py +0 -0
  68. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/_msacpi.py +0 -0
  69. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/_powermetrics.py +0 -0
  70. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/_smc.py +0 -0
  71. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/_sysctl.py +0 -0
  72. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/_wmi_gpu.py +0 -0
  73. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/aggregator.py +0 -0
  74. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/bsd.py +0 -0
  75. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/chain.py +0 -0
  76. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/gpu_detect.py +0 -0
  77. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/hwmon.py +0 -0
  78. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/macos.py +0 -0
  79. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/nvml.py +0 -0
  80. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/psutil_sources.py +0 -0
  81. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/sensors/windows.py +0 -0
  82. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/__init__.py +0 -0
  83. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/_autostart.py +0 -0
  84. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/_devd.py +0 -0
  85. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/_elevate.py +0 -0
  86. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/_imc_timings.py +0 -0
  87. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/_macos_setup.py +0 -0
  88. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/_selinux.py +0 -0
  89. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/_windows_wmi.py +0 -0
  90. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/_winusb.py +0 -0
  91. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/bsd.py +0 -0
  92. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/linux.py +0 -0
  93. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/macos.py +0 -0
  94. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/spd.py +0 -0
  95. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/system/windows.py +0 -0
  96. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/theme/__init__.py +0 -0
  97. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/adapters/theme/cloud.py +0 -0
  98. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/LibreHardwareMonitor.config +0 -0
  99. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/com.github.lexonight1.trcc.policy +0 -0
  100. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/fonts/MSYH.TTC +0 -0
  101. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/fonts/MSYHBD.TTC +0 -0
  102. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/fonts/README.md +0 -0
  103. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/icons/app.ico +0 -0
  104. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/icons/trcc.png +0 -0
  105. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/icons/trcc_128x128.png +0 -0
  106. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/icons/trcc_16x16.png +0 -0
  107. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/icons/trcc_24x24.png +0 -0
  108. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/icons/trcc_256x256.png +0 -0
  109. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/icons/trcc_32x32.png +0 -0
  110. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/icons/trcc_48x48.png +0 -0
  111. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/icons/trcc_64x64.png +0 -0
  112. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/trcc-imc +0 -0
  113. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/trcc-linux.desktop +0 -0
  114. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/assets/trcc-quirk-fix.service +0 -0
  115. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/__init__.py +0 -0
  116. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/_colors.py +0 -0
  117. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/_safe.py +0 -0
  118. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/_version.py +0 -0
  119. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/commands/__init__.py +0 -0
  120. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/commands/_base.py +0 -0
  121. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/commands/system.py +0 -0
  122. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/device_recovery.py +0 -0
  123. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/diagnostics.py +0 -0
  124. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/errors.py +0 -0
  125. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/events.py +0 -0
  126. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/i18n.py +0 -0
  127. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/led_models.py +0 -0
  128. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/led_protocol.py +0 -0
  129. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/models.py +0 -0
  130. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/ports.py +0 -0
  131. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/protocol.py +0 -0
  132. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/registry.py +0 -0
  133. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/core/variants.py +0 -0
  134. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/daemon.py +0 -0
  135. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/data/trcc_usb.te +0 -0
  136. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ipc.py +0 -0
  137. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/proxy.py +0 -0
  138. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/__init__.py +0 -0
  139. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/_ansi.py +0 -0
  140. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/_dc.py +0 -0
  141. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/audio.py +0 -0
  142. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/cloud_theme.py +0 -0
  143. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/data_install.py +0 -0
  144. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/device_sender.py +0 -0
  145. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/display.py +0 -0
  146. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/first_run.py +0 -0
  147. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/led_animation_loop.py +0 -0
  148. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/led_effects.py +0 -0
  149. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/led_segment.py +0 -0
  150. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/media.py +0 -0
  151. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/metrics_loop.py +0 -0
  152. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/metrics_personalize.py +0 -0
  153. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/migration.py +0 -0
  154. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/quickstart.py +0 -0
  155. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/settings.py +0 -0
  156. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/slideshow.py +0 -0
  157. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/video_cache.py +0 -0
  158. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/services/video_export.py +0 -0
  159. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/__init__.py +0 -0
  160. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/_errors.py +0 -0
  161. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/__init__.py +0 -0
  162. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/_shared.py +0 -0
  163. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/config.py +0 -0
  164. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/devices.py +0 -0
  165. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/display.py +0 -0
  166. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/led.py +0 -0
  167. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/main.py +0 -0
  168. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/schemas.py +0 -0
  169. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/system.py +0 -0
  170. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/theme.py +0 -0
  171. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/api/trcc.py +0 -0
  172. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/cli/__init__.py +0 -0
  173. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/cli/_ctx.py +0 -0
  174. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/cli/config.py +0 -0
  175. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/cli/device.py +0 -0
  176. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/cli/led.py +0 -0
  177. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/cli/shell.py +0 -0
  178. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/cli/system.py +0 -0
  179. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/cli/theme.py +0 -0
  180. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/__init__.py +0 -0
  181. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/240240.gif +0 -0
  182. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/240320.gif +0 -0
  183. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/320240.gif +0 -0
  184. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/320320.gif +0 -0
  185. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AK120 Digital.png +0 -0
  186. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AK120 Digitala.png +0 -0
  187. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AK120_Digital.png +0 -0
  188. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AK120_Digitala.png +0 -0
  189. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AS120 VISION.png +0 -0
  190. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AS120 VISIONa.png +0 -0
  191. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AS120_VISION.png +0 -0
  192. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AS120_VISIONa.png +0 -0
  193. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AX120 DIGITAL.png +0 -0
  194. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AX120 DIGITALa.png +0 -0
  195. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AX120_DIGITAL.png +0 -0
  196. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1AX120_DIGITALa.png +0 -0
  197. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1BA120 VISION.png +0 -0
  198. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1BA120 VISIONa.png +0 -0
  199. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1BA120_VISION.png +0 -0
  200. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1BA120_VISIONa.png +0 -0
  201. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1CORE VISION.png +0 -0
  202. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1CORE VISIONa.png +0 -0
  203. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1CORE_VISION.png +0 -0
  204. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1CORE_VISIONa.png +0 -0
  205. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1CZ1.png +0 -0
  206. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1CZ1a.png +0 -0
  207. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1CZ2.png +0 -0
  208. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1CZ2a.png +0 -0
  209. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1CZTV.png +0 -0
  210. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1CZTVa.png +0 -0
  211. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1ELITE VISION.png +0 -0
  212. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1ELITE VISIONa.png +0 -0
  213. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1ELITE_VISION.png +0 -0
  214. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1ELITE_VISIONa.png +0 -0
  215. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN HORIZON PRO.png +0 -0
  216. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN HORIZON PROa.png +0 -0
  217. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN MAGIC PRO.png +0 -0
  218. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN MAGIC PROa.png +0 -0
  219. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN VISION V2.png +0 -0
  220. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN VISION V2a.png +0 -0
  221. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME PRO.png +0 -0
  222. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME PROa.png +0 -0
  223. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME SE.png +0 -0
  224. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME SEa.png +0 -0
  225. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN WARFRAME.png +0 -0
  226. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN WARFRAMEa.png +0 -0
  227. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_HORIZON_PRO.png +0 -0
  228. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_HORIZON_PROa.png +0 -0
  229. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_MAGIC_PRO.png +0 -0
  230. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_MAGIC_PROa.png +0 -0
  231. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_VISION_V2.png +0 -0
  232. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_VISION_V2a.png +0 -0
  233. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME.png +0 -0
  234. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_PRO.png +0 -0
  235. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_PROa.png +0 -0
  236. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_SE.png +0 -0
  237. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAME_SEa.png +0 -0
  238. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1FROZEN_WARFRAMEa.png +0 -0
  239. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1GRAND VISION.png +0 -0
  240. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1GRAND VISIONa.png +0 -0
  241. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1GRAND_VISION.png +0 -0
  242. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1GRAND_VISIONa.png +0 -0
  243. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1HR10 2280 PRO DIGITAL.png +0 -0
  244. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1HR10 2280 PRO DIGITALa.png +0 -0
  245. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1HYPER VISION.png +0 -0
  246. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1HYPER VISIONa.png +0 -0
  247. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1HYPER_VISION.png +0 -0
  248. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1HYPER_VISIONa.png +0 -0
  249. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1KVMALEDC6.png +0 -0
  250. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1KVMALEDC6a.png +0 -0
  251. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC1.png +0 -0
  252. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC10.png +0 -0
  253. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC10a.png +0 -0
  254. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC13.png +0 -0
  255. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC13a.png +0 -0
  256. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC15.png +0 -0
  257. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC15a.png +0 -0
  258. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC1a.png +0 -0
  259. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC2.png +0 -0
  260. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC2JD.png +0 -0
  261. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC2JDa.png +0 -0
  262. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC2a.png +0 -0
  263. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC3.png +0 -0
  264. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC3a.png +0 -0
  265. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC5.png +0 -0
  266. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC5a.png +0 -0
  267. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC7.png +0 -0
  268. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC7a.png +0 -0
  269. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC8.png +0 -0
  270. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC8a.png +0 -0
  271. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC9.png +0 -0
  272. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LC9a.png +0 -0
  273. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD10.png +0 -0
  274. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD10a.png +0 -0
  275. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD11.png +0 -0
  276. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD11a.png +0 -0
  277. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD6.png +0 -0
  278. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD6a.png +0 -0
  279. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD7.png +0 -0
  280. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD7a.png +0 -0
  281. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD8.png +0 -0
  282. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD8a.png +0 -0
  283. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD9.png +0 -0
  284. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LD9a.png +0 -0
  285. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF014.png +0 -0
  286. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF014a.png +0 -0
  287. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF10.png +0 -0
  288. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF10V.png +0 -0
  289. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF10Va.png +0 -0
  290. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF10a.png +0 -0
  291. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF11.png +0 -0
  292. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF11a.png +0 -0
  293. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF12.png +0 -0
  294. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF12a.png +0 -0
  295. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF13.png +0 -0
  296. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF13a.png +0 -0
  297. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF14.png +0 -0
  298. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF14a.png +0 -0
  299. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF15.png +0 -0
  300. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF15a.png +0 -0
  301. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF16.png +0 -0
  302. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF167.png +0 -0
  303. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF16a.png +0 -0
  304. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF17a.png +0 -0
  305. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF18.png +0 -0
  306. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF18a.png +0 -0
  307. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF19.png +0 -0
  308. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF19a.png +0 -0
  309. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF20.png +0 -0
  310. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF20a.png +0 -0
  311. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF21.png +0 -0
  312. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF21a.png +0 -0
  313. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF22.png +0 -0
  314. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF22a.png +0 -0
  315. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF25.png +0 -0
  316. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF25a.png +0 -0
  317. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF8.png +0 -0
  318. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LF8a.png +0 -0
  319. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM16SE.png +0 -0
  320. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM16SEa.png +0 -0
  321. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM19SE.png +0 -0
  322. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM19SEa.png +0 -0
  323. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM22.png +0 -0
  324. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM22a.png +0 -0
  325. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM24.png +0 -0
  326. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM24a.png +0 -0
  327. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM26.png +0 -0
  328. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM26a.png +0 -0
  329. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM27.png +0 -0
  330. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM27a.png +0 -0
  331. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM30.png +0 -0
  332. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1LM30a.png +0 -0
  333. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Mjolnir VISION PRO.png +0 -0
  334. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Mjolnir VISION PROa.png +0 -0
  335. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Mjolnir VISION.png +0 -0
  336. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Mjolnir VISIONa.png +0 -0
  337. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Mjolnir_VISION.png +0 -0
  338. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Mjolnir_VISION_PRO.png +0 -0
  339. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Mjolnir_VISION_PROa.png +0 -0
  340. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Mjolnir_VISIONa.png +0 -0
  341. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1PA120 DIGITAL.png +0 -0
  342. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1PA120 DIGITALa.png +0 -0
  343. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1PA120_DIGITAL.png +0 -0
  344. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1PA120_DIGITALa.png +0 -0
  345. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1PC1.png +0 -0
  346. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1PC1a.png +0 -0
  347. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1RK120 DIGITAL.png +0 -0
  348. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1RK120 DIGITALa.png +0 -0
  349. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1RK120_DIGITAL.png +0 -0
  350. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1RK120_DIGITALa.png +0 -0
  351. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1RP130 VISION.png +0 -0
  352. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1RP130 VISIONa.png +0 -0
  353. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1RP130_VISION.png +0 -0
  354. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1RP130_VISIONa.png +0 -0
  355. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1RX1.png +0 -0
  356. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1RX1a.png +0 -0
  357. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Stream Vision.png +0 -0
  358. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Stream Visiona.png +0 -0
  359. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Stream_Vision.png +0 -0
  360. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/A1Stream_Visiona.png +0 -0
  361. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/about_dropdown.png +0 -0
  362. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/about_dropdown_bg.png +0 -0
  363. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/about_dropdown_select.png +0 -0
  364. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/about_update.png +0 -0
  365. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/about_update_overlay.png +0 -0
  366. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_about_bg.png +0 -0
  367. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_brightness_0.png +0 -0
  368. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_brightness_1.png +0 -0
  369. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_brightness_2.png +0 -0
  370. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_brightness_3.png +0 -0
  371. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_export.png +0 -0
  372. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_form_bg.png +0 -0
  373. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_help.png +0 -0
  374. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_import.png +0 -0
  375. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_main_bg.png +0 -0
  376. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_power.png +0 -0
  377. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_power_hover.png +0 -0
  378. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_save.png +0 -0
  379. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_sysinfo_bg.png +0 -0
  380. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_tab_cloud.png +0 -0
  381. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_tab_cloud_active.png +0 -0
  382. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_tab_local.png +0 -0
  383. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_tab_local_active.png +0 -0
  384. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_tab_mask.png +0 -0
  385. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_tab_mask_active.png +0 -0
  386. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_tab_mask_lower.png +0 -0
  387. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_tab_settings.png +0 -0
  388. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_tab_settings_active.png +0 -0
  389. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_theme_base_bg.png +0 -0
  390. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_theme_gallery_bg.png +0 -0
  391. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/app_theme_settings_bg.png +0 -0
  392. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/carousel_1.png +0 -0
  393. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/carousel_2.png +0 -0
  394. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/carousel_3.png +0 -0
  395. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/carousel_4.png +0 -0
  396. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/carousel_5.png +0 -0
  397. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/carousel_6.png +0 -0
  398. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/carousel_btn.png +0 -0
  399. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/carousel_btn_active.png +0 -0
  400. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/carousel_select_frame.png +0 -0
  401. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/color_panel_eyedropper.png +0 -0
  402. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/color_panel_picker.png +0 -0
  403. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/color_panel_selector_ring.png +0 -0
  404. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/color_panel_slider_thumb.png +0 -0
  405. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/color_wheel_knob.png +0 -0
  406. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/color_wheel_knob_0.png +0 -0
  407. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/color_wheel_toggle_hover.png +0 -0
  408. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/color_wheel_toggle_off.png +0 -0
  409. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/color_wheel_toggle_on.png +0 -0
  410. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_12h.png +0 -0
  411. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_24h.png +0 -0
  412. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_border.png +0 -0
  413. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_border_active.png +0 -0
  414. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_crop.png +0 -0
  415. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_date_dm.png +0 -0
  416. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_date_dmy.png +0 -0
  417. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_date_md.png +0 -0
  418. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_date_ymd.png +0 -0
  419. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_digit_font.png +0 -0
  420. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_fit_height.png +0 -0
  421. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_fit_width.png +0 -0
  422. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_function.png +0 -0
  423. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_function_active.png +0 -0
  424. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_icon.png +0 -0
  425. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_icon_gif.png +0 -0
  426. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_icon_image.png +0 -0
  427. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_icon_livestream.png +0 -0
  428. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_icon_mask.png +0 -0
  429. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_icon_network.png +0 -0
  430. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_icon_video.png +0 -0
  431. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m1.png +0 -0
  432. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m1_active.png +0 -0
  433. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m2.png +0 -0
  434. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m2_active.png +0 -0
  435. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m3.png +0 -0
  436. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m3_active.png +0 -0
  437. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m4.png +0 -0
  438. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m4_active.png +0 -0
  439. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m5.png +0 -0
  440. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m5_active.png +0 -0
  441. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m6.png +0 -0
  442. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_m6_active.png +0 -0
  443. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_minus.png +0 -0
  444. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_network_btn.png +0 -0
  445. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_plus.png +0 -0
  446. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_rotate.png +0 -0
  447. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_slider_thumb.png +0 -0
  448. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_text_font.png +0 -0
  449. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_unit_c.png +0 -0
  450. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/display_mode_unit_f.png +0 -0
  451. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/frozen_warframe_ultra.png +0 -0
  452. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/frozen_warframe_ultra_active.png +0 -0
  453. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_110x480.png +0 -0
  454. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_116x480.png +0 -0
  455. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_1280x480.png +0 -0
  456. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_160x480.png +0 -0
  457. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_180x400.png +0 -0
  458. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_180x480.png +0 -0
  459. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_240x240.png +0 -0
  460. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_240x320.png +0 -0
  461. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_240x400.png +0 -0
  462. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_240x427.png +0 -0
  463. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_270x480.png +0 -0
  464. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_320x240.png +0 -0
  465. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_320x320.png +0 -0
  466. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_320x86.png +0 -0
  467. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_360x360.png +0 -0
  468. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_400x180.png +0 -0
  469. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_400x240.png +0 -0
  470. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_427x240.png +0 -0
  471. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_480x110.png +0 -0
  472. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_480x116.png +0 -0
  473. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_480x160.png +0 -0
  474. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_480x180.png +0 -0
  475. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_480x270.png +0 -0
  476. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_480x480.png +0 -0
  477. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/image_cut_86x320.png +0 -0
  478. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_aggregate.png +0 -0
  479. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_aggregate_active.png +0 -0
  480. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_cz1.png +0 -0
  481. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_kvma.png +0 -0
  482. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_lc1.png +0 -0
  483. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_lc2.png +0 -0
  484. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_lf10.png +0 -0
  485. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_lf11.png +0 -0
  486. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_lf12.png +0 -0
  487. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_lf13.png +0 -0
  488. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_lf15.png +0 -0
  489. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_lf8.png +0 -0
  490. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_rgb_lf13.png +0 -0
  491. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_segment.png +0 -0
  492. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_bg_segment_4zone.png +0 -0
  493. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_dropdown.png +0 -0
  494. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_dropdown_2.png +0 -0
  495. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_dropdown_highlight.png +0 -0
  496. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_dropdown_highlight_2.png +0 -0
  497. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_dropdown_menu.png +0 -0
  498. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_dropdown_menu_2.png +0 -0
  499. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_external.png +0 -0
  500. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_external_active.png +0 -0
  501. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_helmet_1.png +0 -0
  502. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_helmet_2.png +0 -0
  503. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_helmet_3.png +0 -0
  504. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_helmet_4.png +0 -0
  505. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_helmet_5.png +0 -0
  506. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bar_1.png +0 -0
  507. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bar_2.png +0 -0
  508. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bar_3.png +0 -0
  509. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bar_4.png +0 -0
  510. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bar_5.png +0 -0
  511. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bar_6.png +0 -0
  512. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bg_1.png +0 -0
  513. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bg_2.png +0 -0
  514. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bg_3.png +0 -0
  515. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bg_4.png +0 -0
  516. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bg_5.png +0 -0
  517. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bg_5_active.png +0 -0
  518. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_meter_bg_6.png +0 -0
  519. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_1.png +0 -0
  520. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_10.png +0 -0
  521. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_10_active.png +0 -0
  522. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_11.png +0 -0
  523. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_11_active.png +0 -0
  524. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_12.png +0 -0
  525. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_12_active.png +0 -0
  526. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_1_active.png +0 -0
  527. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_2.png +0 -0
  528. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_2_active.png +0 -0
  529. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_3.png +0 -0
  530. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_3_active.png +0 -0
  531. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_4.png +0 -0
  532. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_4_active.png +0 -0
  533. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_5.png +0 -0
  534. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_5_active.png +0 -0
  535. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_6.png +0 -0
  536. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_6_active.png +0 -0
  537. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_7.png +0 -0
  538. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_7_active.png +0 -0
  539. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_8.png +0 -0
  540. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_8_active.png +0 -0
  541. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_9.png +0 -0
  542. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_mode_9_active.png +0 -0
  543. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_power.png +0 -0
  544. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_power_active.png +0 -0
  545. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preset_blue.png +0 -0
  546. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preset_cyan.png +0 -0
  547. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preset_green.png +0 -0
  548. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preset_orange.png +0 -0
  549. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preset_purple.png +0 -0
  550. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preset_red.png +0 -0
  551. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preset_white.png +0 -0
  552. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preset_yellow.png +0 -0
  553. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_ak120.png +0 -0
  554. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_ax120.png +0 -0
  555. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_cz1.png +0 -0
  556. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_frozen_horizon_pro.png +0 -0
  557. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_frozen_magic_pro.png +0 -0
  558. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_lc1.png +0 -0
  559. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_lc2.png +0 -0
  560. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_lf10.png +0 -0
  561. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_lf11.png +0 -0
  562. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_lf12.png +0 -0
  563. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_lf13.png +0 -0
  564. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_lf15.png +0 -0
  565. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_lf8.png +0 -0
  566. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_pa120.png +0 -0
  567. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_preview_pa120_space.png +0 -0
  568. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_show_1.png +0 -0
  569. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_show_1_active.png +0 -0
  570. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_show_2.png +0 -0
  571. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_show_2_active.png +0 -0
  572. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_show_3.png +0 -0
  573. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_show_3_active.png +0 -0
  574. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_slider_thumb.png +0 -0
  575. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_btn_1.png +0 -0
  576. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_btn_1_active.png +0 -0
  577. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_btn_2.png +0 -0
  578. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_btn_2_active.png +0 -0
  579. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_btn_3.png +0 -0
  580. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_btn_3_active.png +0 -0
  581. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_btn_4.png +0 -0
  582. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_btn_4_active.png +0 -0
  583. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_1.png +0 -0
  584. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_1_active.png +0 -0
  585. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_2.png +0 -0
  586. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_2_active.png +0 -0
  587. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_3.png +0 -0
  588. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_3_active.png +0 -0
  589. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_4.png +0 -0
  590. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_4_active.png +0 -0
  591. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_5.png +0 -0
  592. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_5_active.png +0 -0
  593. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_6.png +0 -0
  594. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/led_zone_mode_6_active.png +0 -0
  595. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_sysinfo.png +0 -0
  596. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_sysinfo_1_en.png +0 -0
  597. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_sysinfo_1_tc.png +0 -0
  598. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_sysinfo_en.png +0 -0
  599. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_sysinfo_tc.png +0 -0
  600. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_text.png +0 -0
  601. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_text_en.png +0 -0
  602. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_text_tc.png +0 -0
  603. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_time.png +0 -0
  604. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_time_en.png +0 -0
  605. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_label_time_tc.png +0 -0
  606. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_mode_date.png +0 -0
  607. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_mode_hardware.png +0 -0
  608. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_mode_text.png +0 -0
  609. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_mode_time.png +0 -0
  610. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_mode_weekday.png +0 -0
  611. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/overlay_select.png +0 -0
  612. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_110x480.png +0 -0
  613. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_116x480.png +0 -0
  614. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_160x480.png +0 -0
  615. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_180x400.png +0 -0
  616. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_180x480.png +0 -0
  617. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_240x240.png +0 -0
  618. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_240x320.png +0 -0
  619. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_240x400.png +0 -0
  620. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_240x427.png +0 -0
  621. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_270x480.png +0 -0
  622. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_320x240.png +0 -0
  623. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_320x320.png +0 -0
  624. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_320x320_round.png +0 -0
  625. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_320x86.png +0 -0
  626. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_360x360_round.png +0 -0
  627. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_400x180.png +0 -0
  628. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_400x240.png +0 -0
  629. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_427x240.png +0 -0
  630. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_480x110.png +0 -0
  631. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_480x116.png +0 -0
  632. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_480x160.png +0 -0
  633. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_480x180.png +0 -0
  634. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_480x270.png +0 -0
  635. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_480x480.png +0 -0
  636. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_480x480_round.png +0 -0
  637. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_86x320.png +0 -0
  638. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_animation.png +0 -0
  639. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_btn.png +0 -0
  640. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_btn_active.png +0 -0
  641. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_pause.png +0 -0
  642. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_play.png +0 -0
  643. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_player_control_bg.png +0 -0
  644. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_1280x480.png +0 -0
  645. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_1920x440.png +0 -0
  646. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_1920x462.png +0 -0
  647. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_320x960.png +0 -0
  648. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_360x800.png +0 -0
  649. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_440x1920.png +0 -0
  650. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_462x1920.png +0 -0
  651. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_480x1280.png +0 -0
  652. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_480x800.png +0 -0
  653. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_480x854.png +0 -0
  654. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_540x960.png +0 -0
  655. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_800x360.png +0 -0
  656. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_800x480.png +0 -0
  657. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_854x480.png +0 -0
  658. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_960x320.png +0 -0
  659. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_popup_960x540.png +0 -0
  660. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_res_240x240.png +0 -0
  661. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_res_240x320.png +0 -0
  662. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_res_320x240.png +0 -0
  663. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_res_320x320.png +0 -0
  664. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_round_mask_320x320.png +0 -0
  665. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_round_mask_360x360.png +0 -0
  666. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_round_mask_480x480.png +0 -0
  667. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_video_controls_bg.png +0 -0
  668. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/preview_video_controls_bg_alt.png +0 -0
  669. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/screen_led_deco_1.png +0 -0
  670. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/screen_led_deco_2.png +0 -0
  671. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/screen_led_deco_3.png +0 -0
  672. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/screen_led_deco_4.png +0 -0
  673. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/screen_led_deco_cz1.png +0 -0
  674. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/secondary_screen_bg.png +0 -0
  675. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/secondary_screen_bg_d.png +0 -0
  676. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/secondary_screen_bg_e.png +0 -0
  677. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/secondary_screen_bg_en.png +0 -0
  678. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/secondary_screen_bg_f.png +0 -0
  679. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/secondary_screen_bg_h.png +0 -0
  680. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/secondary_screen_bg_p.png +0 -0
  681. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/secondary_screen_bg_r.png +0 -0
  682. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/secondary_screen_bg_tc.png +0 -0
  683. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/secondary_screen_bg_x.png +0 -0
  684. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_content.png +0 -0
  685. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_content_btn.png +0 -0
  686. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_content_mask.png +0 -0
  687. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_date.png +0 -0
  688. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_date_1.png +0 -0
  689. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_icon.png +0 -0
  690. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_link_1.png +0 -0
  691. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_text.png +0 -0
  692. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_text_1.png +0 -0
  693. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_time.png +0 -0
  694. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_time_1.png +0 -0
  695. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_weekday.png +0 -0
  696. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_add_weekday_1.png +0 -0
  697. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_anim_sync.png +0 -0
  698. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_background.png +0 -0
  699. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_brightness.png +0 -0
  700. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_keyboard_sync_1.png +0 -0
  701. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_keyboard_sync_2.png +0 -0
  702. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_keyboard_sync_3.png +0 -0
  703. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_module.png +0 -0
  704. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_overlay.png +0 -0
  705. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_overlay_add_bg.png +0 -0
  706. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_overlay_color_bg.png +0 -0
  707. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_overlay_grid_bg.png +0 -0
  708. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_overlay_table_bg.png +0 -0
  709. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/settings_params.png +0 -0
  710. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_brightness_bar.png +0 -0
  711. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_checkbox_off.png +0 -0
  712. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_checkbox_on.png +0 -0
  713. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_clip_a.png +0 -0
  714. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_clip_b.png +0 -0
  715. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_close.png +0 -0
  716. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_close_2.png +0 -0
  717. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_dropdown.png +0 -0
  718. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_dropdown_bg_2x.png +0 -0
  719. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_dropdown_bg_4x.png +0 -0
  720. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_dropdown_highlight.png +0 -0
  721. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_loading_animation.png +0 -0
  722. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_progress_bar.png +0 -0
  723. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_round_close.png +0 -0
  724. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_round_confirm.png +0 -0
  725. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_scrollbar_bg.png +0 -0
  726. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_scrollbar_thumb.png +0 -0
  727. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_shortcut_size_slider.png +0 -0
  728. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_thread_multi.png +0 -0
  729. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_thread_single.png +0 -0
  730. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_toggle_off.png +0 -0
  731. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shared_toggle_on.png +0 -0
  732. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shortcuts_panel.png +0 -0
  733. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shortcuts_panel_d.png +0 -0
  734. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shortcuts_panel_e.png +0 -0
  735. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shortcuts_panel_en.png +0 -0
  736. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shortcuts_panel_f.png +0 -0
  737. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shortcuts_panel_p.png +0 -0
  738. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shortcuts_panel_r.png +0 -0
  739. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shortcuts_panel_tc.png +0 -0
  740. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/shortcuts_panel_x.png +0 -0
  741. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sidebar_about.png +0 -0
  742. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sidebar_about_active.png +0 -0
  743. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sidebar_about_bg.png +0 -0
  744. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sidebar_bg.png +0 -0
  745. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sidebar_no_device.png +0 -0
  746. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sidebar_sensor.png +0 -0
  747. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sidebar_sensor_active.png +0 -0
  748. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sidebar_splash.png +0 -0
  749. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sidebar_sysinfo_bg.png +0 -0
  750. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_a.png +0 -0
  751. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_a_180.png +0 -0
  752. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_a_270.png +0 -0
  753. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_a_90.png +0 -0
  754. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_b.png +0 -0
  755. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_b_180.png +0 -0
  756. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_b_270.png +0 -0
  757. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_b_90.png +0 -0
  758. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_c.png +0 -0
  759. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_c_180.png +0 -0
  760. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_c_270.png +0 -0
  761. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/split_overlay_c_90.png +0 -0
  762. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_add_group.png +0 -0
  763. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_cpu.png +0 -0
  764. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_custom.png +0 -0
  765. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_dram.png +0 -0
  766. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_fan.png +0 -0
  767. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_gpu.png +0 -0
  768. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_hdd.png +0 -0
  769. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_net.png +0 -0
  770. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_next_page.png +0 -0
  771. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_prev_page.png +0 -0
  772. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_scrollbar.png +0 -0
  773. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/sysinfo_select.png +0 -0
  774. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_browser_filter.png +0 -0
  775. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_browser_filter_active.png +0 -0
  776. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_cloud_label.png +0 -0
  777. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_cloud_label_d.png +0 -0
  778. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_cloud_label_e.png +0 -0
  779. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_cloud_label_en.png +0 -0
  780. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_cloud_label_f.png +0 -0
  781. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_cloud_label_h.png +0 -0
  782. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_cloud_label_p.png +0 -0
  783. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_cloud_label_r.png +0 -0
  784. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_cloud_label_tc.png +0 -0
  785. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_cloud_label_x.png +0 -0
  786. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_local_carousel.png +0 -0
  787. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_local_carousel_active.png +0 -0
  788. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_local_export_all.png +0 -0
  789. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_local_multi_select.png +0 -0
  790. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_local_multi_select_active.png +0 -0
  791. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_local_select_frame.png +0 -0
  792. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_local_select_frame_active.png +0 -0
  793. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/theme_mask_label.png +0 -0
  794. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_110x480.png +0 -0
  795. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_116x480.png +0 -0
  796. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_1280x480.png +0 -0
  797. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_160x480.png +0 -0
  798. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_180x400.png +0 -0
  799. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_180x480.png +0 -0
  800. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_240x240.png +0 -0
  801. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_240x320.png +0 -0
  802. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_240x400.png +0 -0
  803. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_240x427.png +0 -0
  804. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_270x480.png +0 -0
  805. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_320x240.png +0 -0
  806. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_320x320.png +0 -0
  807. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_320x86.png +0 -0
  808. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_360x360.png +0 -0
  809. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_400x180.png +0 -0
  810. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_400x240.png +0 -0
  811. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_427x240.png +0 -0
  812. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_480x110.png +0 -0
  813. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_480x116.png +0 -0
  814. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_480x160.png +0 -0
  815. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_480x180.png +0 -0
  816. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_480x270.png +0 -0
  817. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_480x480.png +0 -0
  818. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_86x320.png +0 -0
  819. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_bg.png +0 -0
  820. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets/video_cut_bg_alt.png +0 -0
  821. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/assets.py +0 -0
  822. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/base.py +0 -0
  823. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/base_handler.py +0 -0
  824. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/bus_bridge.py +0 -0
  825. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/color_and_add_panels.py +0 -0
  826. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/constants.py +0 -0
  827. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/display_mode_panels.py +0 -0
  828. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/eyedropper.py +0 -0
  829. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/gpu_reader_prompt.py +0 -0
  830. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/led_handler.py +0 -0
  831. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/overlay_element.py +0 -0
  832. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/overlay_grid.py +0 -0
  833. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/pipewire_capture.py +0 -0
  834. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/screen_capture.py +0 -0
  835. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/splash.py +0 -0
  836. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_about.py +0 -0
  837. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_activity_sidebar.py +0 -0
  838. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_color_wheel.py +0 -0
  839. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_device.py +0 -0
  840. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_image_cut.py +0 -0
  841. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_info_module.py +0 -0
  842. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_led_control.py +0 -0
  843. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_preview.py +0 -0
  844. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_screen_led.py +0 -0
  845. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_sensor_picker.py +0 -0
  846. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_system_info.py +0 -0
  847. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_theme_mask.py +0 -0
  848. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_theme_setting.py +0 -0
  849. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_theme_web.py +0 -0
  850. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/gui/uc_video_cut.py +0 -0
  851. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/__init__.py +0 -0
  852. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/device_presentation.py +0 -0
  853. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/lcd_panel.py +0 -0
  854. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/lcd_presentation_model.py +0 -0
  855. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/led_display.py +0 -0
  856. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/led_metrics_format.py +0 -0
  857. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/led_panel.py +0 -0
  858. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/led_zone_model.py +0 -0
  859. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/overlay_model.py +0 -0
  860. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/overlay_serialization.py +0 -0
  861. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/preview_geometry.py +0 -0
  862. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/sensor_display.py +0 -0
  863. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/slideshow_model.py +0 -0
  864. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/presentation/theme_directories.py +0 -0
  865. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qapp.py +0 -0
  866. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/__init__.py +0 -0
  867. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/app.py +0 -0
  868. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/assets.py +0 -0
  869. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/base.py +0 -0
  870. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/bus_bridge.py +0 -0
  871. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/color_wheel.py +0 -0
  872. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/device_picker.py +0 -0
  873. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/eyedropper.py +0 -0
  874. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/image_crop.py +0 -0
  875. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/__init__.py +0 -0
  876. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/about_panel.py +0 -0
  877. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/cloud_theme_browser.py +0 -0
  878. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/configuration_panel.py +0 -0
  879. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/device_panel.py +0 -0
  880. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/display_panel.py +0 -0
  881. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/led/__init__.py +0 -0
  882. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/led/_base.py +0 -0
  883. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/led/advanced_tab.py +0 -0
  884. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/led/color_tab.py +0 -0
  885. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/led/mode_tab.py +0 -0
  886. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/led/segment_tab.py +0 -0
  887. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/led/zone_tab.py +0 -0
  888. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/led_panel.py +0 -0
  889. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/local_theme_browser.py +0 -0
  890. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/mask_browser.py +0 -0
  891. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/overlay_editor.py +0 -0
  892. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/preview_panel.py +0 -0
  893. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/screencast_panel.py +0 -0
  894. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/sidebar.py +0 -0
  895. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/status_panel.py +0 -0
  896. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/panels/system_panel.py +0 -0
  897. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/region_overlay.py +0 -0
  898. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/screen_overlay.py +0 -0
  899. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/sensor_picker.py +0 -0
  900. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/splash.py +0 -0
  901. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/src/trcc/ui/qtgui/video_crop.py +0 -0
  902. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/__init__.py +0 -0
  903. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/adapters/system/test_elevate.py +0 -0
  904. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/adapters/system/test_imc_timings.py +0 -0
  905. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/adapters/system/test_linux_imc.py +0 -0
  906. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/adapters/system/test_spd.py +0 -0
  907. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/adapters/system/test_windows_mem_disk.py +0 -0
  908. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/adapters/system/test_windows_permissions.py +0 -0
  909. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/adapters/system/test_windows_wmi_seam.py +0 -0
  910. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/conftest.py +0 -0
  911. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/mock_platform.py +0 -0
  912. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_api_routes.py +0 -0
  913. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_app_senders.py +0 -0
  914. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_autostart.py +0 -0
  915. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_autostart_macos.py +0 -0
  916. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_autostart_windows.py +0 -0
  917. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_backend_finish.py +0 -0
  918. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_boot_animation_command.py +0 -0
  919. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_boot_animation_device.py +0 -0
  920. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_bulk_lcd_geometry.py +0 -0
  921. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_clock.py +0 -0
  922. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_cloud_themes.py +0 -0
  923. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_commands.py +0 -0
  924. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_connect_failure_hints.py +0 -0
  925. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_connection_issues.py +0 -0
  926. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_control_center.py +0 -0
  927. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_daemon.py +0 -0
  928. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_data_install.py +0 -0
  929. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_dc_codec.py +0 -0
  930. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_dc_reader.py +0 -0
  931. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_device_catalog_smoke.py +0 -0
  932. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_device_recovery.py +0 -0
  933. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_device_sender.py +0 -0
  934. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_device_surface_matrix.py +0 -0
  935. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_diagnostics.py +0 -0
  936. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_display_rotation.py +0 -0
  937. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_display_tweaks.py +0 -0
  938. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_first_run_and_migration.py +0 -0
  939. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_gpu_extras_install.py +0 -0
  940. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_gpu_preference.py +0 -0
  941. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_gpu_reader_prompt.py +0 -0
  942. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_gui_empty_state.py +0 -0
  943. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_gui_entry_exit.py +0 -0
  944. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_gui_panels.py +0 -0
  945. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_gui_raise_existing.py +0 -0
  946. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_hid_lcd_geometry.py +0 -0
  947. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_hotplug.py +0 -0
  948. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_hotplug_bsd.py +0 -0
  949. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_hotplug_polling.py +0 -0
  950. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_hotplug_windows.py +0 -0
  951. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_i18n.py +0 -0
  952. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_integration_pipeline.py +0 -0
  953. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_ipc_server.py +0 -0
  954. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_ipc_windows_fallback.py +0 -0
  955. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_ipc_wire.py +0 -0
  956. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_lcd_panel_model.py +0 -0
  957. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_led_animation_loop.py +0 -0
  958. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_led_assets.py +0 -0
  959. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_led_display_model.py +0 -0
  960. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_led_effects.py +0 -0
  961. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_led_handler_requires_app.py +0 -0
  962. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_led_panel_model.py +0 -0
  963. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_led_pm_registry.py +0 -0
  964. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_led_remap.py +0 -0
  965. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_led_send.py +0 -0
  966. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_led_settings_commands.py +0 -0
  967. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_library_migration.py +0 -0
  968. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_ly_lcd_geometry.py +0 -0
  969. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_mask_commands.py +0 -0
  970. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_mask_rendering.py +0 -0
  971. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_metrics_personalize.py +0 -0
  972. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_mock_reply_override.py +0 -0
  973. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_models.py +0 -0
  974. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_orientation_cloud_background.py +0 -0
  975. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_overlay_grid_adapter.py +0 -0
  976. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_overlay_resolve.py +0 -0
  977. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_packaging_entrypoints.py +0 -0
  978. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_platform_hw_probes.py +0 -0
  979. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_pyusb_find_seam.py +0 -0
  980. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_quickstart.py +0 -0
  981. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_render_led.py +0 -0
  982. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_run_setup_order.py +0 -0
  983. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_scsi_lcd_geometry.py +0 -0
  984. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_selinux_install.py +0 -0
  985. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_send_color.py +0 -0
  986. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_sensor_chain.py +0 -0
  987. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_sensors.py +0 -0
  988. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_sensors_bsd.py +0 -0
  989. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_sensors_lhm_subprocess.py +0 -0
  990. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_sensors_macos.py +0 -0
  991. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_sensors_nvml.py +0 -0
  992. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_sensors_windows.py +0 -0
  993. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_settings_migration.py +0 -0
  994. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_shell.py +0 -0
  995. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_system_commands.py +0 -0
  996. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_system_resume.py +0 -0
  997. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_theme_service.py +0 -0
  998. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_transports.py +0 -0
  999. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_ui_surfaces_smoke.py +0 -0
  1000. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_variant_presentation_audit.py +0 -0
  1001. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_video_cache.py +0 -0
  1002. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_video_playback.py +0 -0
  1003. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/test_wmi_gpu_fallback.py +0 -0
  1004. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/ui/presentation/test_device_presentation.py +0 -0
  1005. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/ui/presentation/test_lcd_presentation_model.py +0 -0
  1006. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/ui/presentation/test_led_metrics_format.py +0 -0
  1007. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/ui/presentation/test_led_zone_model.py +0 -0
  1008. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/ui/presentation/test_overlay_model.py +0 -0
  1009. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/ui/presentation/test_overlay_view_binding.py +0 -0
  1010. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/ui/presentation/test_preview_geometry.py +0 -0
  1011. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/ui/presentation/test_sensor_display.py +0 -0
  1012. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/ui/presentation/test_slideshow_model.py +0 -0
  1013. {trcc_linux-9.7.9 → trcc_linux-9.7.10}/tests/ui/presentation/test_theme_directories.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: trcc-linux
3
- Version: 9.7.9
3
+ Version: 9.7.10
4
4
  Summary: Linux implementation of Thermalright LCD Control Center
5
5
  Project-URL: Homepage, https://github.com/Lexonight1/thermalright-trcc-linux
6
6
  Project-URL: Documentation, https://github.com/Lexonight1/thermalright-trcc-linux#readme
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "trcc-linux"
7
- version = "9.7.9"
7
+ version = "9.7.10"
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.7.9"
3
+ __version__ = "9.7.10"
4
4
  __version_info__ = tuple(int(x) for x in __version__.split("."))
@@ -108,6 +108,13 @@ def _import_dbus_glib() -> tuple[Any, Any] | None:
108
108
  log.debug("_import_dbus_glib: called")
109
109
  try:
110
110
  import dbus # pyright: ignore[reportMissingImports]
111
+
112
+ # NOTE (investigated 2026-06-27): importing gi emits two
113
+ # DeprecationWarnings on Python 3.14 (GLib.unix_signal_add_full +
114
+ # asyncio event-loop policy) from PyGObject's OWN internals — not our
115
+ # calls. Latest gi (3.56.3) still warns; our 3.12 floor is clean.
116
+ # Upstream + cosmetic, and this guarded import already degrades
117
+ # gracefully. Leave it — don't filter blindly or monkeypatch gi.
111
118
  import gi # noqa: F401 # pyright: ignore[reportMissingImports]
112
119
  from dbus.mainloop.glib import ( # pyright: ignore[reportMissingImports]
113
120
  DBusGMainLoop,
@@ -17,9 +17,11 @@ Per-wire subsystem mapping:
17
17
  Every device also gets `power/control="auto"` +
18
18
  `power/autosuspend_delay_ms="10000"` so the kernel autosuspends the device
19
19
  ~10s after our frame stream stops; the firmware sleeps the panel in response
20
- to the USB suspend (the mechanism the Windows app relies on — #143). This
21
- MUST match packaging/udev/99-trcc-lcd.rules the two are the same rule from
22
- two sources and drifting them re-breaks panel sleep.
20
+ to the USB suspend (the mechanism the Windows app relies on — #143). The
21
+ EXCEPTION is `_NO_AUTOSUSPEND` devices, whose firmware re-enumerates instead of
22
+ sleeping under suspend (a reconnect loop #201); they pin `power/control="on"`.
23
+ This MUST match packaging/udev/99-trcc-lcd.rules — the two are the same rule
24
+ from two sources and drifting them re-breaks panel sleep / the loop fix.
23
25
 
24
26
  For SCSI devices we additionally write /etc/modprobe.d/trcc-lcd.conf
25
27
  forcing `usb-storage` Bulk-Only (not UAS) so /dev/sgN is reliably
@@ -71,6 +73,19 @@ _WIRE_SUBSYSTEMS: dict[Wire, tuple[str, ...]] = {
71
73
  }
72
74
 
73
75
 
76
+ # Devices whose firmware can't survive USB autosuspend. The kernel suspends the
77
+ # port ~10s after our frame stream stops; instead of sleeping the panel, these
78
+ # re-enumerate, the kernel re-suspends ~10s later, and you get a reconnect loop
79
+ # every ~10-15s (#201, em73es' ChiZhu GrandVision 360). They pin
80
+ # power/control="on" (never autosuspend) instead of the "auto" the other panels
81
+ # use for idle-sleep (#143). 87ad:70db (USB/bulk) is reporter-confirmed;
82
+ # 87cd:70db (its SCSI sibling, same product family) is included by inference.
83
+ _NO_AUTOSUSPEND: frozenset[tuple[int, int]] = frozenset({
84
+ (0x87ad, 0x70db),
85
+ (0x87cd, 0x70db),
86
+ })
87
+
88
+
74
89
  # ── Rule generation ──────────────────────────────────────────────────
75
90
 
76
91
 
@@ -95,11 +110,12 @@ def build_udev_rules() -> str:
95
110
  f'{attr}{{idProduct}}=="{pid:04x}", '
96
111
  f'MODE="0666"'
97
112
  )
113
+ control = "on" if (vid, pid) in _NO_AUTOSUSPEND else "auto"
98
114
  lines.append(
99
115
  f'ACTION=="add", SUBSYSTEM=="usb", '
100
116
  f'ATTR{{idVendor}}=="{vid:04x}", '
101
117
  f'ATTR{{idProduct}}=="{pid:04x}", '
102
- f'ATTR{{power/control}}="auto", '
118
+ f'ATTR{{power/control}}="{control}", '
103
119
  f'ATTR{{power/autosuspend_delay_ms}}="10000"'
104
120
  )
105
121
  lines.append("")
@@ -320,13 +320,26 @@ class App:
320
320
  # Active theme → reload from the rotated-resolution theme dir. Shared
321
321
  # resolver with RestoreLastTheme so connect-restore + runtime rotation
322
322
  # agree on the oriented variant (#136).
323
+ #
324
+ # reset_overrides=False: a rotation re-roots the SAME theme to its
325
+ # oriented variant — it is NOT an explicit theme switch. The original
326
+ # C# app rotates at the render layer and NEVER drops the user's overlay/
327
+ # background/mask edits on rotate; legacy's startup restore likewise
328
+ # re-applied them. Resetting here (the old default=True) PERSIST-CLEARED
329
+ # user_overlay_elements + stopped video + reverted the cloud background —
330
+ # so on a connect/restart the user's "last preview with changes" was lost
331
+ # before RestoreLastTheme could replay it. Preserve them; the dedicated
332
+ # cloud-background + mask reload blocks below still re-resolve those two
333
+ # to the oriented resolution. (Catalog selection + encode are untouched,
334
+ # so the hardware-verified widescreen behavior in #169 is unaffected.)
323
335
  if s.current_theme:
324
336
  cur = Path(s.current_theme)
325
337
  cand = oriented_theme_path(self, key, cur, degrees=event.degrees)
326
338
  if cand != cur:
327
- log.info("_on_orientation_changed: reload theme %s → %s",
328
- cur.name, cand)
329
- self.dispatch(LoadTheme(key=key, path=cand))
339
+ log.info("_on_orientation_changed: reload theme %s → %s "
340
+ "(preserve overrides)", cur.name, cand)
341
+ self.dispatch(LoadTheme(key=key, path=cand,
342
+ reset_overrides=False))
330
343
 
331
344
  # Active cloud background → re-apply from the rotated-resolution web dir.
332
345
  # Stored as ``web/{res}/<id>``; ``LoadCloudTheme`` now materialises per
@@ -54,11 +54,19 @@ def oriented_theme_path(
54
54
  degrees = app.settings.for_device(key).orientation
55
55
  bw, bh = oriented_resolution(device.profile.resolution, degrees)
56
56
  paths = app.platform.paths()
57
- for base in (paths.theme_dir(bw, bh), paths.user_theme_dir(bw, bh)):
58
- cand = base / stored.name
59
- if cand.exists():
60
- return cand
61
- return stored
57
+ # Re-root for ORIENTATION only preserve the tree the user actually
58
+ # selected (their saved theme vs the shipped one). A user-saved theme and
59
+ # a shipped theme can share a name (they coexist); re-resolving shipped-first
60
+ # would silently swap the user's last preview for the shipped default of the
61
+ # same name on every rotation/restore, losing their changes. Fall back to
62
+ # ``stored`` when the same-name oriented variant isn't on disk in that tree
63
+ # (the renderer pixel-rotates the art).
64
+ if stored.is_relative_to(paths.user_content_dir()):
65
+ base = paths.user_theme_dir(bw, bh)
66
+ else:
67
+ base = paths.theme_dir(bw, bh)
68
+ cand = base / stored.name
69
+ return cand if cand.exists() else stored
62
70
 
63
71
 
64
72
  _VIDEO_EXTS_FOR_SAVE = frozenset({".mp4", ".mov", ".webm", ".zt", ".mkv", ".avi"})
@@ -76,6 +84,9 @@ _MASK_IMAGE_EXTS = frozenset({".png", ".jpg", ".jpeg", ".bmp", ".webp"})
76
84
  _LEGACY_MASK_FILENAME = "01.png"
77
85
 
78
86
 
87
+ _LEGACY_BG_FILENAME = "00.png"
88
+
89
+
79
90
  _IMAGE_EXTS = frozenset({".png", ".jpg", ".jpeg", ".bmp", ".webp"})
80
91
 
81
92
 
@@ -229,6 +240,11 @@ def _require_connected_device(app: App, key: str) -> Any:
229
240
  log.debug("_require_connected_device: key=%s", key)
230
241
  device = app.get(key)
231
242
  if not device.is_connected:
243
+ # DeviceNotConnectedError propagates PAST App.dispatch (no try/except
244
+ # there), so without this the rejected wire command is invisible in the
245
+ # log. Warn with the key — the universal "acted before connect" trace.
246
+ log.warning("%s: wire command dispatched before ConnectDevice — "
247
+ "device attached but not connected", key)
232
248
  raise DeviceNotConnectedError(
233
249
  f"{key} not connected — dispatch ConnectDevice first"
234
250
  )
@@ -980,6 +980,8 @@ class UploadBootAnimation(Command[BootAnimationResult]):
980
980
  message=f"{self.key} is not a SCSI LCD (boot animation is SCSI-only)",
981
981
  )
982
982
  if not device.is_connected:
983
+ log.warning("UploadBootAnimation %s: device not connected — "
984
+ "dispatched before ConnectDevice", self.key)
983
985
  raise DeviceNotConnectedError(
984
986
  f"{self.key} not connected — dispatch ConnectDevice first"
985
987
  )
@@ -1088,7 +1090,7 @@ class SetBrightness(Command[BrightnessResult]):
1088
1090
  if not 0 <= self.percent <= 100:
1089
1091
  return BrightnessResult(
1090
1092
  ok=False, key=self.key, percent=self.percent,
1091
- message="Brightness out of range (0–100)",
1093
+ message=f"Brightness out of range (0–100): {self.percent}",
1092
1094
  )
1093
1095
  app.settings.set_brightness(self.key, self.percent)
1094
1096
  _invalidate_scene(app, self.key)
@@ -73,6 +73,8 @@ class SetLedColors(Command[LedColorsResult]):
73
73
  message=f"{self.key} is not an LED device",
74
74
  )
75
75
  if not device.is_connected:
76
+ log.warning("SetLedColors %s: device not connected — "
77
+ "dispatched before ConnectDevice", self.key)
76
78
  raise DeviceNotConnectedError(
77
79
  f"{self.key} not connected — dispatch ConnectDevice first"
78
80
  )
@@ -184,6 +186,10 @@ class RenderLed(Command[LedColorsResult]):
184
186
  message=f"{self.key} is not an LED device",
185
187
  )
186
188
  if not device.is_connected:
189
+ # Per-frame command (DEBUG) — not-connected here is a transient
190
+ # race with disconnect, not a user mis-step; keep it off INFO.
191
+ log.debug("RenderLed %s: device not connected — skipping frame",
192
+ self.key)
187
193
  raise DeviceNotConnectedError(
188
194
  f"{self.key} not connected — dispatch ConnectDevice first"
189
195
  )
@@ -45,6 +45,7 @@ from ..results import (
45
45
  from ._base import Command
46
46
  from ._helpers import (
47
47
  _IMAGE_EXTS,
48
+ _LEGACY_BG_FILENAME,
48
49
  _LEGACY_MASK_FILENAME,
49
50
  _VIDEO_EXTS_FOR_LOAD,
50
51
  _VIDEO_EXTS_FOR_SAVE,
@@ -70,6 +71,17 @@ if TYPE_CHECKING:
70
71
  log = logging.getLogger(__name__)
71
72
 
72
73
 
74
+ def _theme_preview(theme_dir: Path) -> str:
75
+ """Tile image for a theme dir: ``Theme.png`` → ``00.png`` → any ``*.png``
76
+ → ``""``. Single source for the browser tile so every UI agrees."""
77
+ for name in ("Theme.png", "00.png"):
78
+ candidate = theme_dir / name
79
+ if candidate.is_file():
80
+ return str(candidate)
81
+ any_png = next(theme_dir.glob("*.png"), None)
82
+ return str(any_png) if any_png is not None else ""
83
+
84
+
73
85
  @dataclass(frozen=True, slots=True)
74
86
  class LoadTheme(Command[ThemeResult]):
75
87
  """Parse a theme, persist it, render the first frame, and send it.
@@ -413,33 +425,57 @@ class SaveTheme(Command[ThemeResult]):
413
425
  message=f"A theme named {self.name!r} already exists.",
414
426
  )
415
427
 
428
+ # Build into a staging dir, THEN atomically swap it over the target.
429
+ # The theme being saved is usually the target ITSELF (re-saving the
430
+ # loaded theme — a prior save re-points the active theme at the saved
431
+ # dir), so deleting the target up-front would destroy the source's own
432
+ # background/mask BEFORE _build_manifest reads them — the cause of the
433
+ # "source theme has no background" data loss. Staging keeps the source
434
+ # intact until every asset is captured, and makes overwrite crash-safe.
435
+ staging = target.parent / f".{self.name}.saving"
416
436
  try:
417
437
  target.parent.mkdir(parents=True, exist_ok=True)
418
- if target.exists():
419
- log.warning("SaveTheme: overwriting existing theme %s", target)
420
- shutil.rmtree(target)
421
- target.mkdir(exist_ok=False)
438
+ if staging.exists():
439
+ shutil.rmtree(staging)
440
+ staging.mkdir(exist_ok=False)
422
441
  except OSError as e:
423
- log.warning("SaveTheme: mkdir failed for %s: %s", target, e)
442
+ log.warning("SaveTheme: mkdir failed for staging %s: %s", staging, e)
424
443
  return ThemeResult(
425
444
  ok=False, key=self.key, theme_name=self.name,
426
- message=f"failed to create target directory: {e}",
445
+ message=f"failed to create staging directory: {e}",
427
446
  )
428
447
 
429
448
  try:
430
449
  manifest = self._build_manifest(
431
- app, target, theme, device_settings, w, h,
450
+ app, staging, theme, device_settings, w, h,
432
451
  )
433
- self._write_manifest(target, manifest)
434
- self._write_thumbnail(app, target, theme)
452
+ self._write_manifest(staging, manifest)
453
+ self._write_thumbnail(app, staging, theme)
435
454
  except (OSError, ThemeError, TrccError) as e:
436
- log.exception("SaveTheme: assembly failed; rolling back %s", target)
437
- shutil.rmtree(target, ignore_errors=True)
455
+ log.exception("SaveTheme: assembly failed; discarding staging %s",
456
+ staging)
457
+ shutil.rmtree(staging, ignore_errors=True)
438
458
  return ThemeResult(
439
459
  ok=False, key=self.key, theme_name=self.name,
440
460
  message=f"failed to assemble saved theme: {e}",
441
461
  )
442
462
 
463
+ # Swap staging → target. Every source asset is now captured in staging,
464
+ # so removing the (possibly ==source) target is safe.
465
+ try:
466
+ if target.exists():
467
+ log.warning("SaveTheme: overwriting existing theme %s", target)
468
+ shutil.rmtree(target)
469
+ staging.replace(target)
470
+ except OSError as e:
471
+ log.exception("SaveTheme: finalize failed; discarding staging %s",
472
+ staging)
473
+ shutil.rmtree(staging, ignore_errors=True)
474
+ return ThemeResult(
475
+ ok=False, key=self.key, theme_name=self.name,
476
+ message=f"failed to finalize saved theme: {e}",
477
+ )
478
+
443
479
  # Saved theme is now fully self-contained — drop the device's
444
480
  # overrides + user edits, then re-point BOTH the live active
445
481
  # theme (what the renderer reads via app.active_themes) and the
@@ -561,16 +597,22 @@ class SaveTheme(Command[ThemeResult]):
561
597
  width: int,
562
598
  height: int,
563
599
  ) -> str | None:
564
- """Store the resolved current background; return its library ref.
565
-
566
- Image canonical PNG bytes into the user library (deduped),
567
- returning the ref. Video bundled verbatim as ``Theme.<ext>``
568
- in the theme dir (returns ``None``; videos reload via the in-dir
569
- convention). ``DeviceSettings.background_path`` (cloud override)
570
- wins over the source theme's bundled background.
600
+ """Link the resolved current background into the saved theme dir.
601
+
602
+ Every asset a saved theme uses is a SYMLINK into the shared data tree —
603
+ no bytes duplicated; only the DC/config (``trcc.json``) is a real copy
604
+ edited per save. The background links in under its standard in-dir name
605
+ ``00.png`` for an image, ``Theme.<ext>`` for a video — so the loader
606
+ finds it by convention and no manifest ref is needed (returns ``None``).
607
+
608
+ Asset home (the symlink target): a catalog asset (cloud
609
+ ``cloud_theme_dir`` / user ``user_background_dir`` ``web/{w}{h}``) is
610
+ linked in place; a loose image/video is first stored into the user
611
+ library (deduped, native res) and the link points there. On a
612
+ filesystem WITHOUT symlink support the asset is REFERENCED instead (the
613
+ ``web/{w}{h}/…`` ref is returned and the loader resolves it).
614
+ ``DeviceSettings.background_path`` (override) wins over the source theme.
571
615
  """
572
- import shutil
573
-
574
616
  src = self._pick_asset(
575
617
  s.background_path, app.themes.background_path(theme), "background",
576
618
  )
@@ -580,17 +622,36 @@ class SaveTheme(Command[ThemeResult]):
580
622
  return None
581
623
 
582
624
  ext = src.suffix.lower()
583
- if ext in _VIDEO_EXTS_FOR_SAVE:
584
- dst = target / f"Theme{ext}"
585
- shutil.copy2(src, dst)
586
- log.info("SaveTheme: video bg bundled → %s", dst)
587
- return None
625
+ is_video = ext in _VIDEO_EXTS_FOR_SAVE
626
+ paths = app.platform.paths()
627
+ src_resolved = src.resolve()
588
628
 
589
- surface = app.renderer.open_image(src)
590
- ref = app.themes.store_background(
591
- app.renderer.encode_png(surface), ".png", width, height,
592
- )
593
- log.info("SaveTheme: image bg %s library ref %s", src.name, ref)
629
+ # Stable home for the asset (what the symlink points at) + the ref that
630
+ # names it (the no-symlink fallback). Catalog asset → link in place;
631
+ # loose asset → give it a deduped home in the user library first.
632
+ canonical: Path | None = None
633
+ ref: str | None = None
634
+ for root in (paths.user_background_dir(width, height),
635
+ paths.cloud_theme_dir(width, height)):
636
+ if src_resolved.is_relative_to(root.resolve()):
637
+ canonical = src_resolved
638
+ ref = f"web/{width}{height}/{src.name}"
639
+ break
640
+ if canonical is None:
641
+ data = (src.read_bytes() if is_video
642
+ else app.renderer.encode_png(app.renderer.open_image(src)))
643
+ ref = app.themes.store_background(
644
+ data, ext if is_video else ".png", width, height,
645
+ )
646
+ canonical = paths.user_background_dir(width, height) / Path(ref).name
647
+
648
+ in_dir = f"Theme{ext}" if is_video else _LEGACY_BG_FILENAME
649
+ if self._try_symlink(target / in_dir, canonical):
650
+ log.info("SaveTheme: background %s → symlink %s → %s (no copy)",
651
+ src.name, in_dir, canonical)
652
+ return None
653
+ log.info("SaveTheme: background %s → reference %s (no symlink support)",
654
+ src.name, ref)
594
655
  return ref
595
656
 
596
657
  def _store_mask(
@@ -612,12 +673,13 @@ class SaveTheme(Command[ThemeResult]):
612
673
  the user's edited metrics live inline in the saved manifest's
613
674
  ``elements``, so no DC is written here.
614
675
 
615
- A theme's OWN bundled mask (not in any catalog) is copied
616
- theme-local into the saved dir as ``01.png`` self-contained, yet
617
- still never in the catalog. Returns the ref for a catalog mask, or
618
- ``None`` for a theme-local one (``mask_path`` then falls back to the
619
- in-dir ``01.png``) and for no-mask. ``DeviceSettings.mask_path``
620
- (user/cloud override) wins over the source theme's mask.
676
+ A theme's OWN bundled / loose mask (not in any catalog) is first stored
677
+ into the user mask library (deduped) and the symlink points there. On a
678
+ filesystem WITHOUT symlink support the mask is REFERENCED instead (the
679
+ ``web/zt{w}{h}/<id>`` ref is returned and the loader resolves it). The
680
+ mask's own ``config1.dc`` stays with the mask in the library; the saved
681
+ theme's overlay layout lives in its own ``trcc.json`` (baked elements).
682
+ ``DeviceSettings.mask_path`` (override) wins over the source theme's mask.
621
683
  """
622
684
  src = self._pick_asset(
623
685
  s.mask_path, app.themes.mask_path(theme), "mask",
@@ -626,29 +688,59 @@ class SaveTheme(Command[ThemeResult]):
626
688
  log.info("SaveTheme: no mask to save (neither override nor source)")
627
689
  return None
628
690
 
629
- # Catalog mask (cloud or prior upload) → reference it, never copy.
630
- src_resolved = src.resolve()
631
691
  paths = app.platform.paths()
632
- for root in (paths.cloud_mask_dir(width, height),
633
- paths.user_mask_dir(width, height)):
634
- if src_resolved.is_relative_to(root.resolve()):
635
- ref = f"web/zt{width}{height}/{src.parent.name}"
636
- log.info("SaveTheme: mask %s is a catalog mask → reference "
637
- "%s (no copy)", src.parent.name, ref)
638
- return ref
692
+ src_resolved = src.resolve()
693
+ mask_dir = src_resolved.parent
694
+
695
+ # Stable home for the mask's 01.png (symlink target) + its ref (the
696
+ # no-symlink fallback). Catalog mask link in place; loose mask → give
697
+ # it a deduped home in the user mask library first.
698
+ canonical: Path | None = None
699
+ ref: str | None = None
700
+ for root in (paths.user_mask_dir(width, height),
701
+ paths.cloud_mask_dir(width, height)):
702
+ if mask_dir.is_relative_to(root.resolve()):
703
+ canonical = src_resolved
704
+ ref = f"web/zt{width}{height}/{mask_dir.name}"
705
+ break
706
+ if canonical is None:
707
+ try:
708
+ image = src.read_bytes()
709
+ except OSError as e:
710
+ log.warning("SaveTheme: could not read mask %s (%s) — mask "
711
+ "omitted", src, e)
712
+ return None
713
+ ref = app.themes.store_mask(image, width, height)
714
+ canonical = (paths.user_mask_dir(width, height)
715
+ / Path(ref).name / _LEGACY_MASK_FILENAME)
716
+
717
+ if self._try_symlink(target / _LEGACY_MASK_FILENAME, canonical):
718
+ log.info("SaveTheme: mask %s → symlink 01.png → %s (no copy)",
719
+ src.name, canonical)
720
+ return None
721
+ log.info("SaveTheme: mask %s → reference %s (no symlink support)",
722
+ src.name, ref)
723
+ return ref
639
724
 
640
- # Theme's own bundled mask → copy theme-local so the saved theme is
641
- # self-contained, without adding to the user mask catalog.
642
- import shutil
643
- dst = target / _LEGACY_MASK_FILENAME
725
+ @staticmethod
726
+ def _try_symlink(link: Path, asset: Path) -> bool:
727
+ """Create *link* as a symlink to *asset*.
728
+
729
+ True on success; False when the filesystem can't symlink (e.g. Windows
730
+ without the privilege, exotic FS) so the caller falls back to a manifest
731
+ reference. An existing entry at *link* (a prior save's symlink) is
732
+ replaced. *asset* is linked as an absolute path so the link resolves
733
+ regardless of the theme dir's location.
734
+ """
644
735
  try:
645
- shutil.copy2(src, dst)
736
+ if link.is_symlink() or link.exists():
737
+ link.unlink()
738
+ link.symlink_to(asset)
739
+ return True
646
740
  except OSError as e:
647
- log.warning("SaveTheme: theme-local mask copy failed (%s) — mask "
648
- "omitted", e)
649
- return None
650
- log.info("SaveTheme: bundled mask %s → theme-local %s", src.name, dst)
651
- return None
741
+ log.info("SaveTheme: symlink %s %s unavailable (%s) — referencing",
742
+ link, asset, e)
743
+ return False
652
744
 
653
745
  @staticmethod
654
746
  def _write_manifest(target: Path, manifest: dict) -> None:
@@ -1056,11 +1148,15 @@ class ListThemes(Command[ThemesListResult]):
1056
1148
  directory: Path | None = None
1057
1149
 
1058
1150
  def execute(self, app: App) -> ThemesListResult:
1151
+ paths = app.platform.paths()
1059
1152
  if self.directory is not None:
1060
1153
  roots = [self.directory]
1061
1154
  elif self.resolution is not None:
1062
- paths = app.platform.paths()
1063
1155
  w, h = self.resolution
1156
+ # Shipped (program / cloud-downloaded) themes FIRST, the user's
1157
+ # saved themes AFTER — both listed, neither hiding the other (dedupe
1158
+ # by PATH, not name, so a same-named user + shipped pair both belong,
1159
+ # told apart by ``origin``). (#theme-collision)
1064
1160
  roots = [paths.theme_dir(w, h), paths.user_theme_dir(w, h)]
1065
1161
  else:
1066
1162
  return ThemesListResult(
@@ -1068,16 +1164,22 @@ class ListThemes(Command[ThemesListResult]):
1068
1164
  message="ListThemes requires resolution=(w,h) or directory=...",
1069
1165
  )
1070
1166
 
1071
- seen: set[Path] = set()
1167
+ # Origin is location-derived (theme under user_data_dir → "user"), so
1168
+ # it is correct in directory mode too and replaces name heuristics.
1169
+ user_root = paths.user_data_dir().resolve()
1170
+ seen_paths: set[Path] = set()
1072
1171
  entries: list[ThemeListEntry] = []
1073
1172
  for root in roots:
1074
1173
  for theme in app.themes.list(root):
1075
- if theme.path in seen:
1174
+ resolved = theme.path.resolve()
1175
+ if resolved in seen_paths:
1076
1176
  continue
1077
- seen.add(theme.path)
1177
+ seen_paths.add(resolved)
1078
1178
  entries.append(ThemeListEntry(
1079
1179
  name=theme.name, resolution=theme.resolution,
1080
1180
  path=str(theme.path),
1181
+ preview=str(_theme_preview(theme.path)),
1182
+ origin="user" if resolved.is_relative_to(user_root) else "shipped",
1081
1183
  ))
1082
1184
  target_str = "; ".join(str(r) for r in roots)
1083
1185
  return ThemesListResult(
@@ -1389,6 +1491,10 @@ class RestoreLastTheme(Command[ThemeResult]):
1389
1491
  # the theme's bundled layout (that's an explicit-switch behavior).
1390
1492
  candidate = Path(stored)
1391
1493
  if candidate.is_dir():
1494
+ # Load EXACTLY the persisted path (re-rooted to the current
1495
+ # orientation). A user save never overwrites the shipped theme of
1496
+ # the same name, so restore must NOT re-resolve a shipped pointer to
1497
+ # the user one — it loads whatever the user last selected.
1392
1498
  candidate = oriented_theme_path(app, self.key, candidate)
1393
1499
  return LoadTheme(
1394
1500
  key=self.key, path=candidate, reset_overrides=False,
@@ -6,6 +6,7 @@ render. Every Command has one concrete Result type.
6
6
  from __future__ import annotations
7
7
 
8
8
  from dataclasses import dataclass, field
9
+ from typing import Literal
9
10
 
10
11
  from .models import (
11
12
  DeviceInfo,
@@ -205,10 +206,22 @@ class ThemeImportResult(Result):
205
206
 
206
207
  @dataclass(frozen=True, slots=True)
207
208
  class ThemeListEntry:
208
- """One row in a ThemesListResult — name + resolution + path."""
209
+ """One row in a ThemesListResult — name + resolution + path + preview + origin.
210
+
211
+ ``preview`` is the absolute path to the tile image (``Theme.png`` →
212
+ ``00.png`` → any ``*.png``, else ``""``) so every UI builds the same
213
+ browser tile from the Command result instead of re-walking the dir.
214
+
215
+ ``origin`` is the theme's data root — ``"user"`` (saved under
216
+ ``user_data_dir``) or ``"shipped"`` (pkg / cloud-downloaded). Location-
217
+ derived, the canonical replacement for name-based heuristics: it drives the
218
+ user/default filter and any "my themes" badge, identically in every UI.
219
+ """
209
220
  name: str
210
221
  resolution: tuple[int, int]
211
222
  path: str
223
+ preview: str = ""
224
+ origin: Literal["user", "shipped"] = "shipped"
212
225
 
213
226
 
214
227
  @dataclass(frozen=True, slots=True)
@@ -70,6 +70,23 @@ def _translate_date_pattern(pattern: str) -> str:
70
70
  return result
71
71
 
72
72
 
73
+ # The default date format (DeviceSettings.date_format default). A date element
74
+ # whose pattern renders the same as this is treated as "uncustomised" → the
75
+ # user's global pref wins; a different pattern is a deliberate theme choice.
76
+ _DEFAULT_DATE_FORMAT = "yyyy/MM/dd"
77
+
78
+
79
+ def is_default_date_pattern(fmt: str) -> bool:
80
+ """True if *fmt* (a strftime spec like ``%Y/%m/%d`` OR a ``yyyy/MM/dd``-style
81
+ pattern) renders identically to the DEFAULT date format.
82
+
83
+ The theme reconciliation rule: a date element carrying a NON-default pattern
84
+ (e.g. ``%m/%d``) is a deliberate design choice the renderer honours; a
85
+ default-equivalent pattern means the theme didn't customise the date, so the
86
+ user's global ``date_format`` preference wins — universally, every UI."""
87
+ return _translate_date_pattern(fmt) == _translate_date_pattern(_DEFAULT_DATE_FORMAT)
88
+
89
+
73
90
  def resolve_clock(
74
91
  source: ClockSource,
75
92
  *,
@@ -18,7 +18,7 @@ from ..core.errors import ThemeError
18
18
  from ..core.models import OverlayElement
19
19
  from ..core.ports import Renderer
20
20
  from . import _dc as Dc
21
- from ._clock import resolve_clock
21
+ from ._clock import is_default_date_pattern, resolve_clock
22
22
 
23
23
  log = logging.getLogger(__name__)
24
24
 
@@ -330,13 +330,18 @@ class OverlayService:
330
330
  source: str = "?",
331
331
  ) -> None:
332
332
  clock_source = str(element.get("source", ""))
333
- # A date element may carry the theme's own strftime pattern (from the
334
- # DC, or a grid edit) honour it instead of the global default.
335
- # ``"%" in fmt`` distinguishes a real pattern ("%m/%d") from the
336
- # metric default "{value}". Time/weekday keep the precomputed dict
337
- # (localised weekday, 12h handling that isn't a bare strftime).
333
+ # Date format reconciliation (universal every UI renders through here):
334
+ # * A DELIBERATE non-default theme pattern (e.g. "%m/%d") is honoured
335
+ # a theme designed for a specific date layout keeps it.
336
+ # * A default-equivalent pattern ("%Y/%m/%d" ≡ "yyyy/MM/dd") means the
337
+ # theme didn't customise the date, so the user's global date_format
338
+ # pref wins (it's already baked into the precomputed dict, per
339
+ # device). Time/weekday always use the dict (localised weekday, 12h
340
+ # handling). ``"%" in fmt`` excludes the metric default "{value}".
341
+ # (#format-prefs)
338
342
  elem_fmt = str(element.get("format", ""))
339
- if clock_source == "date" and "%" in elem_fmt:
343
+ if (clock_source == "date" and "%" in elem_fmt
344
+ and not is_default_date_pattern(elem_fmt)):
340
345
  text = resolve_clock("date", date_format=elem_fmt)
341
346
  else:
342
347
  text = clock.get(clock_source, "")