Make the timers pause after user has stopped providing input to the computer #24
Labels
enhancement
New feature or request
help wanted
Extra attention is needed
wishlist
Good to have, but not immediately required
Most of my usage of Badger is related to RSI prevention for my hands and arms. However, I find it hard to actually pay the reminders the respect they should deserve, because I don't spend a continuous amount of time sitting in front of the computer.
That makes it so that some reminders are perfectly timed (because I've spent 15 minutes continuously using the keyboard and mouse, for example) while some others are not (they might trigger 20s after I come back from making myself some tea).
There's a precedent for RSI-preventing apps behaving based on the latest user input, see Workrave for that.
Sadly, Workrave doesn't work fully anymore with Elementary and I don't know why 😢
I guess the GUI is too old and it's been deprecated.
But I digress. That app has different timers that trigger reminders for micropauses, full rests and end of daily load. Those timers stop counting after around 10s of no input, and then reset if the user spends the micropause or rest stopping time, respectively, out of the computer.
I think Badger could use a similar approach. Since it aims to be minimal, a smaller feature than what Workrave has/had should probably suffice. Maybe just pausing the timers if the user hasn't given input in the last 10s?
Possible problems with this proposal
Privacy
You could ask about the privacy aspect of this. I've asked about the stance of Elementary regarding these kinds of features in the ElementaryOS Slack, and they said that it's encouraged to ask the OS for keyboard/mouse events if the use case needs it. They also said that they do App Review anyways before new releases and that therefore if an app aims to be malicious they're probably catching it anyways.
Existence of the feature
In the Slack they also said that this system hook for keyboard and mouse events exists, somewhere in the shared GNOME stacks between Linux distros. They sent me a link, I can try to fish it out of the Slack if you need me to. Otherwise I can just ask as well :)
The text was updated successfully, but these errors were encountered: