Skip to content

Conversation

@akaihola
Copy link

@akaihola akaihola commented Jan 8, 2026

Fixes #1.

Remaining work:

  • review AI generated patch

akaihola and others added 3 commits January 3, 2026 00:19
The tray icon became unresponsive after a recording cycle because thread
references were not cleaned up and race conditions existed between
the monitoring and recording threads.

- Add `_recording_started` flag to synchronize icon updates
- Clean up thread references in `callback_stop_recording`
- Pass `icon` to `start_recording` to track startup state
- Fix minor linting issue and set default action for Stop menu item

Generated with opencode

Co-Authored-By: opencode <noreply@netresearch.com>
Add 'is not None' checks before calling 'is_alive()' on thread
attributes. This prevents an AttributeError when a recording has
been stopped and the thread reference has been cleared.

Generated with opencode

Co-Authored-By: opencode <noreply@netresearch.com>
When stopping a recording session, the tray icon stayed in the recording
or busy state until all threads were joined. By explicitly setting the
recording and busy flags and calling update_icon before joining, the
icon returns to its initial state immediately upon user action.

This also allows the monitoring thread loop to exit cleanly as soon as
the stop command is issued.

Generated with opencode

Co-Authored-By: opencode <noreply@netresearch.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Tray icon only works once

1 participant