938 votespeterb commented
This may help show how I see it working: http://syntap.com/products_timestamp_productinfo.htm (only with better interface obviously!).
This program has a built-in slacking timer, so you can start a job and then flag it as slacking. I found it very useful, as I could track time wasted. Which is slightly different to pausing a task (to do another) but both could be implemented together?