feat: Enhance audio capture and monitoring features
- Added "audioCapture" permission to manifest for microphone access. - Introduced DeepSeek as a new AI provider option in the side panel. - Implemented a capture mode selection (tab-only, mic-only, mixed) in the side panel. - Added options to enable/disable the extension and auto-open the assistant window. - Integrated a mic monitor feature with live input level visualization. - Included buttons for requesting microphone permission and granting tab access. - Updated styles for new sections and mic level visualization. - Enhanced model fetching logic to support DeepSeek and improved error handling.
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
<option value="openai">OpenAI (GPT)</option>
|
||||
<option value="anthropic">Anthropic (Claude)</option>
|
||||
<option value="google">Google (Gemini)</option>
|
||||
<option value="deepseek">DeepSeek</option>
|
||||
<option value="ollama">Ollama (Local)</option>
|
||||
</select>
|
||||
</div>
|
||||
@@ -33,6 +34,50 @@
|
||||
<div id="apiKeyStatus" class="status-message"></div>
|
||||
</div>
|
||||
|
||||
<div class="capture-mode-section">
|
||||
<label for="captureModeSelect">Capture mode:</label>
|
||||
<select id="captureModeSelect">
|
||||
<option value="tab">Tab-only (default)</option>
|
||||
<option value="mic">Mic-only</option>
|
||||
<option value="mixed">Mixed (experimental)</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="active-state-section">
|
||||
<label>
|
||||
<input type="checkbox" id="extensionActiveToggle" checked>
|
||||
Extension Active
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="overlay-visibility-section">
|
||||
<label>
|
||||
<input type="checkbox" id="autoOpenAssistantWindow">
|
||||
Auto-open assistant window after Start Listening
|
||||
</label>
|
||||
<div class="status-message" id="sidepanelTip">
|
||||
Tip: You can close this side panel while listening; the in-tab overlay will keep running.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mic-monitor-section">
|
||||
<h4>🎙️ Mic Monitor</h4>
|
||||
<label for="inputDeviceSelect">Input device:</label>
|
||||
<select id="inputDeviceSelect"></select>
|
||||
<div id="inputDeviceStatus" class="status-message"></div>
|
||||
<div class="mic-level">
|
||||
<div class="mic-level-bar" id="micLevelBar"></div>
|
||||
</div>
|
||||
<button id="startMicMonitor">Enable Mic Monitor</button>
|
||||
</div>
|
||||
|
||||
<div class="performance-section">
|
||||
<label>
|
||||
<input type="checkbox" id="speedModeToggle">
|
||||
Optimize for speed (faster, shorter answers)
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="context-section">
|
||||
<h4>📄 Context Management</h4>
|
||||
<div class="context-tabs">
|
||||
@@ -80,9 +125,14 @@
|
||||
</div>
|
||||
|
||||
<button id="toggleListening">Start Listening</button>
|
||||
<button id="showOverlay">Show Overlay</button>
|
||||
<button id="requestMicPermission">Request Microphone Permission</button>
|
||||
<button id="grantTabAccess">Grant Tab Access</button>
|
||||
<div id="micPermissionStatus" class="status-message"></div>
|
||||
<div id="tabAccessStatus" class="status-message"></div>
|
||||
<div id="transcript"></div>
|
||||
<div id="aiResponse"></div>
|
||||
</div>
|
||||
<script src="sidepanel.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user