KremeCN
|
a3812aae27
|
fix(infrared): propagate repository storage errors and recover learning keys across effective profiles
|
2026-08-25 12:51:47 +08:00 |
|
KremeCN
|
b6cae9b2c9
|
fix(infrared): add relearn use case for ready keys and clean up interrupted learning in onCleared and init
|
2026-08-25 12:44:07 +08:00 |
|
KremeCN
|
8cd44c93e1
|
fix(infrared): unify atomic config state snapshot, avoid message race, and rollback cancelled learning status
|
2026-08-25 12:36:19 +08:00 |
|
KremeCN
|
3561f3dd4a
|
fix(infrared): url-encode profileId in routes and cancel underlying learning deferred
|
2026-08-25 12:27:54 +08:00 |
|
KremeCN
|
8682f81cb8
|
fix(infrared): propagate learning error result and localize remote screen strings
|
2026-08-25 12:20:29 +08:00 |
|
KremeCN
|
a3bcdd973c
|
fix(infrared): support re-learning existing keys, cancel active learning jobs, and propagate CancellationException
|
2026-08-25 12:14:12 +08:00 |
|
KremeCN
|
714fe699f6
|
fix(infrared): clear learning state on completion and guard against duplicate key sending
|
2026-08-25 12:05:02 +08:00 |
|
Moler
|
9dc5226d83
|
feat: build custom remote visual components and Compose panels
|
2026-08-25 11:40:46 +08:00 |
|
Moler
|
3a79338fb9
|
feat: implement infrared remote control viewmodel
|
2026-08-25 11:40:46 +08:00 |
|
Moler
|
feab58bf3d
|
feat: define infrared remote scenes and button specifications
|
2026-08-25 11:40:46 +08:00 |
|
Moler
|
78dac5519a
|
feat: support 1-100 numeric infrared key slots and gateway login entry
|
2026-08-25 11:40:45 +08:00 |
|
Moler
|
116f8d1b75
|
feat: add infrared control screen
|
2026-08-25 11:40:23 +08:00 |
|
Moler
|
6e83a78a81
|
feat: add infrared control state machine
|
2026-08-25 11:40:23 +08:00 |
|
Moler
|
9ccbfbc297
|
feat: coordinate infrared runtime state
|
2026-08-25 11:40:23 +08:00 |
|
Moler
|
ff85b3eb45
|
feat: persist infrared key bindings
|
2026-08-25 11:40:23 +08:00 |
|