-
Notifications
You must be signed in to change notification settings - Fork 1
Releases: NYOGamesCOM/STT
v0.3.5
π¨ Design
- Removed the ugly outer red aura ring around the pill β it looked like
a 2004 Winamp skin, not liquid glass. - Removed the pulsing halo around the status dot. It's now a single
small solid dot, like the record indicator on Voice Memos. - Replaced the continuous bezier waveform line (which read as "one flat
red stripe") with mirrored discrete bars β the Voice-Memos /
Siri-bars style. Each bar independently tracks an audio-level sample
so the whole row actually moves as you talk. - Slimmer proportions (186 Γγ°γ€ 30) and a lighter timer (9 pt, non-bold).
- Kept the 1-px top shine for subtle glass depth. That's it.
Downloads
| Platform | Asset | Notes |
|---|---|---|
| Windows x64 | STT-windows-x64.exe |
Run as Administrator (required for global hotkeys) |
| macOS (arm64) | STT-macos.zip |
Unzip, then grant Accessibility in System Settings β Privacy & Security |
| Linux x64 | STT-linux-x64 |
Run with sudo (the keyboard library needs root on Linux) |
First launch downloads the Whisper base model (~150 MB).
Assets 5
v0.3.4
π Fixed
- Overlay indicator was invisible because of a bug in our click-through
setup, not the Tk root state. Confirmed by probing the actual HWND
state withctypesβ no more guessing:Overlay._build's ctypes call usedtop.winfo_id()as the target,
which returns the inner Tk frame HWND, not the Win32 top-level.- We then OR-ed
WS_EX_LAYEREDonto that inner frame. - A layered window with no
SetLayeredWindowAttributesor
UpdateLayeredWindowcall is rendered as fully transparent by
the DWM compositor β everything we drew on the canvas was silently
dropped, even though Tk reportedmapped=True. - Meanwhile, Tk's own
-alphaattribute correctly set layered
attributes on the root HWND (alpha=235, topmost, etc.) β so the
wrapper behaved correctly, it was just invisible.
- Fix: apply click-through flags (
WS_EX_TRANSPARENT,
WS_EX_TOOLWINDOW,WS_EX_NOACTIVATE) to the root HWND via
GetAncestor(hwnd, GA_ROOT), and stop addingWS_EX_LAYERED
ourselves. Verified via a Win32 API probe that the inner frame is no
longer layered and the root keepsalpha=235,topmost=True. - This was the bug all the way back from v0.3.0. Several "fixes" before
this one (dropping-transparentcolor, un-withdrawing the root,
adding thelift()dance) turned out to treat symptoms rather than
the real cause.
Downloads
| Platform | Asset | Notes |
|---|---|---|
| Windows x64 | STT-windows-x64.exe |
Run as Administrator (required for global hotkeys) |
| macOS (arm64) | STT-macos.zip |
Unzip, then grant Accessibility in System Settings β Privacy & Security |
| Linux x64 | STT-linux-x64 |
Run with sudo (the keyboard library needs root on Linux) |
First launch downloads the Whisper base model (~150 MB).
Assets 5
v0.3.3
π Fixed
- Real root cause of the invisible overlay and invisible "Open full
history" window. Since v0.3.0 the shared Tk interpreter root was
withdraw()-n β totally hidden. On Windows, Toplevels of a withdrawn
root (especiallyoverrideredirect+ layered-alphawindows) get
their HWND created and Tk reports them as mapped, but DWM never
actually composites them. The main window worked only because it
was a simple non-layered non-overrideredirect Toplevel. - Fix: stop withdrawing the root. Instead, size it 1 Γγ°γ€ 1, position it
at-32000, -32000(far off any reasonable screen), set-alpha 0.0
andoverrideredirect True. It's invisible to the user but
"visible" to Win32 so owned Toplevels render correctly. - Overlay indicator is back. History window now opens where the user
can actually see it.
π Better diagnostics
show_history_window()and the tray "History..." click now log
breadcrumbs. Every history open path is traceable instt.log.
Downloads
| Platform | Asset | Notes |
|---|---|---|
| Windows x64 | STT-windows-x64.exe |
Run as Administrator (required for global hotkeys) |
| macOS (arm64) | STT-macos.zip |
Unzip, then grant Accessibility in System Settings β Privacy & Security |
| Linux x64 | STT-linux-x64 |
Run with sudo (the keyboard library needs root on Linux) |
First launch downloads the Whisper base model (~150 MB).
Assets 5
v0.3.2
π¨ Design
- Overlay now has the Apple-ish liquid-glass look: a slightly-lighter
pill on the dark canvas (so the pill shape is actually visible), a
1-px top-half highlight for the glass shine, a soft outer edge ring,
and a faint red aura around the pill rim while recording. - Overlay alpha lowered to 0.92 for a touch of real transparency.
- Pill grown by a hair (210 Γγ°γ€ 36) to make room for the new layering.
π Fixed
- "Open full history ..." button did nothing. It was firing correctly,
but the new history window opened behind the main window. Now
lift()+focus_force()+ a 300 ms topmost flash guarantee it
surfaces. Same fix applied to the Set-Hotkey dialog. - Settings drawer drifting into view when you dragged the window.
The drawer's off-screen position was pinned to the initial window
width; resizing wider revealed it. Now the drawer always repositions
to the current right edge on every<Configure>event, whether it's
open or closed. - Overlay topmost kept dropping after the layered-window attribute
was set while withdrawn. Now re-asserted on every show transition.
Downloads
| Platform | Asset | Notes |
|---|---|---|
| Windows x64 | STT-windows-x64.exe |
Run as Administrator (required for global hotkeys) |
| macOS (arm64) | STT-macos.zip |
Unzip, then grant Accessibility in System Settings β Privacy & Security |
| Linux x64 | STT-linux-x64 |
Run with sudo (the keyboard library needs root on Linux) |
First launch downloads the Whisper base model (~150 MB).
Assets 5
v0.3.1
π Fixed
- Bottom-centre overlay indicator is back. v0.3.0 converted the
overlay from its ownTk()root to aToplevelof the shared UI
root β which silently broke-transparentcolor(Windows' transparent
key attribute is only reliable on top-levelTk()windows, not on
Toplevelchildren). On affected machines the pill rendered as a
hot-pink rectangle that didn't look like an indicator at all; on
others it just didn't show. Dropped the transparent-corner trick in
favour of a solid dark background β the pill still looks clean, just
with a tight rectangular boundary indistinguishable from the pill at
96 % alpha. - Overlay now logs every show/hide transition and its initial geometry
tostt.logso future overlay bugs can be diagnosed from the log.
Downloads
| Platform | Asset | Notes |
|---|---|---|
| Windows x64 | STT-windows-x64.exe |
Run as Administrator (required for global hotkeys) |
| macOS (arm64) | STT-macos.zip |
Unzip, then grant Accessibility in System Settings β Privacy & Security |
| Linux x64 | STT-linux-x64 |
Run with sudo (the keyboard library needs root on Linux) |
First launch downloads the Whisper base model (~150 MB).
Assets 5
v0.3.0
This release fixes the two bugs that plagued v0.2.x β "Show window" that
didn't open the window, and random crashes when opening the UI β by
rewriting the Tkinter architecture from the ground up.
π Fixed
- Show window reliably works. The tray menu's "Show window" (and
double-clicking the icon) now always restores the main window, no
matter how it was hidden. - No more random UI crashes. Opening history / update / what's-new
dialogs while the main window is alive no longer destabilises Tk.
β¨ Changed (under the hood)
- All Tk work now runs on a single dedicated UI thread owned by a new
UIManager. Every window (overlay, main window, hotkey dialog,
history, update, what's-new) is aToplevelof the shared hidden
root. Cross-thread work goes through a dispatch queue. - Dropped the custom dark title bar on the main window β it was the
source of the iconify / restore / taskbar-visibility flakiness. The
main window now uses the native Windows title bar, darkened on
Windows 11 via DWM. White on Windows 10 β acceptable tradeoff for
everything actually working reliably. - Removed ~150 lines of Win32 ctypes gymnastics (
SW_RESTORE,
SW_MINIMIZE,WS_EX_APPWINDOW, topmost-flash,SetForegroundWindow,
manual maximize toggle, custom drag handlers) that existed only to
paper over the multi-threaded Tk issues. use_native_titlebarconfig key removed (the native bar is always used now).
π Also fixed along the way
- Preview pane's
tk.Text(pady=(6, 10))was an invalid argument (tuples
aren't accepted as internal padding on Text widgets). Previously
silently swallowed by the broken threading; now a proper int.
Downloads
| Platform | Asset | Notes |
|---|---|---|
| Windows x64 | STT-windows-x64.exe |
Run as Administrator (required for global hotkeys) |
| macOS (arm64) | STT-macos.zip |
Unzip, then grant Accessibility in System Settings β Privacy & Security |
| Linux x64 | STT-linux-x64 |
Run with sudo (the keyboard library needs root on Linux) |
First launch downloads the Whisper base model (~150 MB).
Assets 5
v0.2.3
π Fixed
- Clicking Show window in the tray menu now reliably restores the
main window from every hidden state (withdrawn, iconified, or
minimised via the Win32 API) β 5-step restore: deiconify β
ShowWindow(SW_RESTORE/SW_SHOW)β recentre if off-screen β
topmost-flash βSetForegroundWindow. - Debug log now records every show / restore attempt so any remaining
edge case can be diagnosed fromstt.log. - Reverted the minimise button to Tk's
iconify()β the restore path
handles every entry state, no need for a bespoke minimise flavour.
β¨ New
use_native_titlebarconfig option as an escape hatch. Set it to
trueinconfig.jsonto fall back to the native Windows title bar
(dark on Windows 11 via DWM, white on Windows 10). The custom
title bar remains the default.
Downloads
| Platform | Asset | Notes |
|---|---|---|
| Windows x64 | STT-windows-x64.exe |
Run as Administrator (required for global hotkeys) |
| macOS (arm64) | STT-macos.zip |
Unzip, then grant Accessibility in System Settings β Privacy & Security |
| Linux x64 | STT-linux-x64 |
Run with sudo (the keyboard library needs root on Linux) |
First launch downloads the Whisper base model (~150 MB).
Assets 5
v0.2.2
π Fixed
- Main window wouldn't come back after minimizing or closing β "Show window"
(tray right-click) and double-clicking the tray icon now reliably restore
it via the Win32 API. The custom-title-barβminimise button also
usesSW_MINIMIZEdirectly so it's consistent with the restore path.
π‘ Heads-up
- Windows tray icons respond to right-click for the menu and
double-click to open the main window. A single left-click does
nothing (OS convention; can't be changed).
Downloads
| Platform | Asset | Notes |
|---|---|---|
| Windows x64 | STT-windows-x64.exe |
Run as Administrator (required for global hotkeys) |
| macOS (arm64) | STT-macos.zip |
Unzip, then grant Accessibility in System Settings β Privacy & Security |
| Linux x64 | STT-linux-x64 |
Run with sudo (the keyboard library needs root on Linux) |
First launch downloads the Whisper base model (~150 MB).
Assets 5
v0.2.1
β¨ New
- Real changelog: every release now ships hand-written user-facing notes
- "What's new" dialog on first launch after you update to a new version
- "What's new in this version..." entry added to the tray menu
- Current version now visible in the Settings drawer (under About)
π¨ Design
- Redesigned update dialog β custom dark title bar, version diff pill
(v0.1.5 β v0.2.0), relative release time ("released 2d ago"),
section-coloured bullets (mint = new, amber = design, red = fixed) - Tertiary "See on GitHub" link added alongside the primary buttons
Downloads
| Platform | Asset | Notes |
|---|---|---|
| Windows x64 | STT-windows-x64.exe |
Run as Administrator (required for global hotkeys) |
| macOS (arm64) | STT-macos.zip |
Unzip, then grant Accessibility in System Settings β Privacy & Security |
| Linux x64 | STT-linux-x64 |
Run with sudo (the keyboard library needs root on Linux) |
First launch downloads the Whisper base model (~150 MB).
Assets 5
v0.2.0
STT (Speech to text) β held-key push-to-talk voice-to-text, fully offline.
| Platform | Asset | Notes |
|---|---|---|
| Windows x64 | STT-windows-x64.exe |
Run as Administrator (required for global hotkeys) |
| macOS (arm64) | STT-macos.zip |
Unzip, then grant Accessibility in System Settings β Privacy & Security |
| Linux x64 | STT-linux-x64 |
Run with sudo (the keyboard library needs root on Linux) |
First launch downloads the Whisper base model (~150 MB) into your HuggingFace cache.
See the README for configuration and troubleshooting.
Full Changelog: v0.1.5...v0.2.0