<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tmix.git/src/model/audiodevice.h, branch master</title>
<subtitle>TDE pulseaudio mixer
</subtitle>
<id>https://git.ceux.org/tmix.git/atom?h=master</id>
<link rel='self' href='https://git.ceux.org/tmix.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.ceux.org/tmix.git/'/>
<updated>2026-05-15T14:10:04+00:00</updated>
<entry>
<title>Full mixer implementation — tray, popup, prefs, devices tab with port indicators</title>
<updated>2026-05-15T14:10:04+00:00</updated>
<author>
<name>Calvin Morrison</name>
<email>calvin@pobox.com</email>
</author>
<published>2026-05-15T14:10:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ceux.org/tmix.git/commit/?id=e776bc768cf9afca1867200e25d64d315cd72a3e'/>
<id>urn:sha1:e776bc768cf9afca1867200e25d64d315cd72a3e</id>
<content type='text'>
Adds the complete tmix feature set built since the initial skeleton:
balance knob, level meters, KLed mute button, system tray with scroll-wheel
volume and recording indicator, tray popup, preferences dialog, right-click
context menus, single-instance enforcement, scroll area, window geometry
persistence, and Devices tab with PA card profile switcher and live port
availability indicators (2-column layout, in-place updates on plug/unplug).

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Initial tmix skeleton — model layer + basic UI</title>
<updated>2026-05-13T01:32:53+00:00</updated>
<author>
<name>Calvin Morrison</name>
<email>calvin@pobox.com</email>
</author>
<published>2026-05-13T01:32:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ceux.org/tmix.git/commit/?id=f6f7c36909fa161efe53c40e9b4c34856e751536'/>
<id>urn:sha1:f6f7c36909fa161efe53c40e9b4c34856e751536</id>
<content type='text'>
PulseModel: stable PulseDevice objects keyed by PA index, updated
in-place via postEvent reconciliation. No bulk rebuilds. Three signals:
deviceAdded, deviceRemoved (device changed handled per-device via
volumeChanged/muteChanged/nameChanged).

MixerWindow: four-tab layout (Output/Input/Playback/Recording), adds
and removes individual DeviceWidgets in response to model signals.

Builds and links cleanly against TQt3/TDE + libpulse.

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
</feed>
