Hello, > CONTEXT: When I'm idling with the clock running, Org asks if I want > to resolve the clock when I come back (this is by setting > org-clock-idle-time). > > PROBLEM: I'm not sure how recent the change was, but Org started > asking me _multiple times_ what I want to do when back.
I have this problem, already reported but not solved in these threads and maybe others: https://lists.gnu.org/archive/html/emacs-orgmode/2019-02/msg00333.html, https://lists.gnu.org/archive/html/emacs-orgmode/2010-08/msg00188.html. I have investigated a little and it seems that there is a timer that calls org-resolve-clocks-if-idle every minute, and if (org-user-idle-seconds) is greater than 60*org-clock-idle-time, that function prompts the user to resolve the clock. The problem is that this prompt blocks Emacs, and if you are idle (org-clock-idle-time + N) minutes, the other N scheduled calls to org-resolve-clocks-if-idle occur immediately after answering the prompt. But for some reason (a bug?), answering the prompt does not affect (org-user-idle-seconds), so the prompt appears again, and you have to answer it N times (unless your answer was to cancel the clock or clock out). So the problem is in (org-user-idle-seconds), which in my window system boils down to a call to (current-idle-time). It should return 0 after answering the prompt, but in my system it keeps counting up. At this point I stopped investigating since that function is defined in C. Since this bug is already old and I have not found much information about it, I assume that in most systems answering the prompt does reset the idle timer and this bug does not occur. As a quick fix for those systems where this is an issue, we could reset the idle timer ourselves after the prompt in org-resolve-clocks-if-idle. What do yo think? Emacs : GNU Emacs 29.0.50 (build 9, x86_64-pc-linux-gnu, GTK+ Version 3.24.20, cairo version 1.16.0) of 2022-03-11 Package: Org mode version 9.5.2 (release_9.5.2-24-g668205 @ /home/ignacio/repos/emacs/lisp/org/)