workrave icon indicating copy to clipboard operation
workrave copied to clipboard

Option to change inactivity timer [feature request]

Open yimyamyum opened this issue 6 years ago • 4 comments

Issue #103 was how I learned that reading mode existed. It's great that we have that functionality (though I don't know if "Reading Mode" is descriptive enough for users to understand exactly what it entails).

However, the current implementation of the inactivity timer seems a bit one-size-fits-all. It's not hard to imagine going through the work day looking at code and documentation and not knowing when you might end up reading something for a half hour or more - and if you end up reading something longer than you thought you would and you don't bring up workrave and activate reading mode then you won't get prompted to take breaks.

A nice middle-ground would be a configurable inactivity timer. Then a user could set it to some value which exceeds the maximum number of seconds they would ever spend reading a single screen of text. Then they wouldn't need to activate reading mode to continue getting prompts for breaks, but they would still be able to walk away from the computer and have the break timers pause after a couple of minutes. Thanks for your consideration.

yimyamyum avatar Dec 22 '18 18:12 yimyamyum

I think the relevant line is https://github.com/rcaelers/workrave/blob/3437685ec30ac5bdf1974745f4a68317576f7afd/libs/core/src/LocalActivityMonitor.cc#L41 though it seems to set the inactivity threshold to 5 seconds while it really is 7 seconds so probably I did not understand it yet.

Konzertheld avatar Nov 07 '21 19:11 Konzertheld

I found that under Linux, you can set the idle time via dconf-editor. Find the value in milliseconds in org.workrave.monitor.idle.

Konzertheld avatar Nov 07 '21 19:11 Konzertheld

To add to @Konzertheld 's comment: I found how to do the same under Windows.

  1. Exit WorkRave
  2. Create an empty file at location %appdata%\Workrave\workrave.ini
  3. Run WorkRave. Exit it again
  4. Open the aforementioned workrave.ini file
  5. in the "monitor" section in that file, add a new line that says "idle=123" without the quotes. The 123 value is in seconds - change it to whatever number you wish.
  6. Save the file and run WorkRave again.

That's all :)

However, after you do that, and a "micro break" prompt comes up, that prompt never detects that you've stopped using the PC, so you get the "disappointed lightbulb" face and the prompt times out.

So, something is missing in my solution. (probably because I'm using an undocumented feature here).

logixoul avatar Aug 13 '22 07:08 logixoul

I am so glad I found this thread. Was looking for this functionality, as I often spend 10-20 seconds just starting at my screen, thinking of the next step to take. And that definitely isn't me having an eye-break.

@logixoul I think I also found out why you get a disappointed bulb showing up. Your idle is likely longer than the actual duration of the micro-break. And for Workrave to count your micro-break - you have to be idle at least for some time during it. But if, for example, the break duration is 10 seconds and your idle timer is 20 - you will usually not become idle before the micro-break runs out. Neat find with the .ini file, by the way.

MJBlack9000 avatar Apr 16 '24 11:04 MJBlack9000