← Whispering

fix: Disable native mode, run in browser only

7b1d5e953f7d384505fdcd683588b60268432ab6 · Claude · Dec 1, 2025 20:20

Native mode (pywebview) requires GTK or QT dependencies which adds
unnecessary complexity. Browser mode works reliably across all systems.

Users can still run the app in a dedicated browser window, and the UI
is fully functional in the browser.

+7 −11 · 1 file changed

  • src/whispering_ui/main.py +7 −11
diff --git a/src/whispering_ui/main.py b/src/whispering_ui/main.py
index d55d5db..171dfe5 100644
--- a/src/whispering_ui/main.py
+++ b/src/whispering_ui/main.py
@@ -160,21 +160,17 @@ def main():
     app.on_shutdown(save_settings_on_exit)
 
     # === RUN APPLICATION ===
-    # Try to run as native desktop window, fall back to web if pywebview not available
-    try:
-        import pywebview
-        native_mode = True
-    except ImportError:
-        print("Note: pywebview not installed. Running in browser mode.")
-        print("Install pywebview for native window: pip install pywebview")
-        native_mode = False
+    # Disable native mode - just run in browser mode
+    # Native mode requires GTK or QT which adds complexity
+    print("Starting web interface at http://127.0.0.1:8000")
+    print("Press Ctrl+C to stop")
 
     ui.run(
         title='Whispering',
-        native=native_mode,
-        window_size=(400 if not state.text_visible else 900, 1000),
+        native=False,  # Run in browser mode for simplicity
+        port=8000,
         reload=False,
-        show=not native_mode  # Auto-open browser if not native mode
+        show=True  # Auto-open browser
     )