mirror of https://github.com/jetkvm/kvm.git
* feat(display.go): impl setDisplayBrightness() Implements setDisplayBrightness(brightness int) which allows setting the backlight brightness on JetKVM's hardware. Needs to be implemented into the RPC, config and frontend. * feat(config): add backlight control settings * feat(display): add automatic dimming & switch off to display WIP, dims the display to 50% of the BacklightMaxBrightness after BacklightDimAfterMS expires. Turns the display off after BacklightOffAfterMS * feat(rpc): add methods to get and set BacklightSettings * WIP: feat(settings): add Max backlight setting * chore: use constant for backlight control file * fix: only attempt to wake the display if it's off * feat(display): wake on touch * fix: re-use buffer between reads * fix: wakeDisplay() on start to fix warm start issue If the application had turned off the display before exiting, it wouldn't be brought on when the application restarted without a device reboot. * chore: various comment & string updates * fix: newline on set brightness log Noticed by @eric https://github.com/jetkvm/kvm/pull/17#discussion_r1903338705 * fix: set default value for display Set the DisplayMaxBrightness to the default brightness used out-of-the-box by JetKVM. Also sets the dim/timeout to 2 minutes and 30 mintes respectively. * feat(display.go): use tickers to countdown to dim/off As suggested by tutman in https://github.com/jetkvm/kvm/pull/17, use tickers set to the duration of dim/off to avoid a loop running every second. The tickers are reset to the dim/off times whenever wakeDisplay() is called. * chore: update config Changed Dim & Off values to seconds instead of milliseconds, there's no need for it to be that precise. * feat(display.go): wakeDisplay() force Adds the force boolean to wakedisplay() which allows skipping the backlightState == 0 check, this means you can force a ticker reset, even if the display is currently in the "full bright" state * feat(display.go): move tickers into their own method This allows them to only be started if necessary. If the user has chosen to keep the display on and not-dimmed all the time, the tickers can't start as their tick value must be a positive integer. * feat(display.go): stop tickers when auto-dim/auto-off is disabled * feat(rpc): implement display backlight control methods * feat(ui): implement display backlight control * chore: update variable names As part of @joshuasing's review on #17, updated variables & constants to match the Go best practices. Signed-off-by: Cameron Fleming <cameron@nevexo.space> * fix(display): move backlightTicker setup into screen setup goroutine Signed-off-by: Cameron Fleming <cameron@nevexo.space> * chore: fix some start-up timing issues * fix(display): Don't attempt to start the tickers if the display is disabled If max_brightness is zero, then there's no point in trying to dim it (or turn it off...) * fix: wakeDisplay() doesn't need to stop the tickers The tickers only need to be reset, if they're disabled, they won't have been started. * fix: Don't wake up the display if it's turned off --------- Signed-off-by: Cameron Fleming <cameron@nevexo.space> |
||
---|---|---|
.. | ||
public | ||
src | ||
.env.development | ||
.env.device | ||
.env.production | ||
.eslintrc.cjs | ||
.gitignore | ||
.prettierrc | ||
index.html | ||
package-lock.json | ||
package.json | ||
postcss.config.js | ||
tailwind.config.js | ||
tsconfig.json | ||
tsconfig.node.json | ||
vite-env.d.ts | ||
vite.config.ts |