wakatime / macos-wakatime

Mac system tray app for automatic time tracking and metrics generated from your Xcode, Figma, Postman, etc. usage.
https://wakatime.com/mac
BSD 3-Clause "New" or "Revised" License
127 stars 22 forks source link

Fallback to filesystem and mouse events to track any app #103

Closed alanhamlett closed 3 months ago

alanhamlett commented 1 year ago

To start sending heartbeats for apps that don't support Accessibility events, we'll start watching keypress and filesystem events. The combination of keypress and filesystem events will be called Fallback events (our own term).

Using Fallback events, we can start tracking any mac app not just known ones. To do that, we need:

alanhamlett commented 1 year ago

Update: With #109 we ran into a problem with too many filesystem events unrelated to the currently focused app. Not sure how to filter down to only those fsevents for a specific app, so we might have to postpone this work.

alanhamlett commented 11 months ago

Update: We're tracking Figma and Postman now as entity type app using the window title as entity.

We should still look into detecting a focused file, then use the window title as the project.

alanhamlett commented 3 months ago

Implemented with #218 where we track the last time a key was pressed or the mouse moved, and then look through the a11y dom to find entity and sometimes project.