Preparing to merge.
This commit is contained in:
+28
-26
@@ -126,26 +126,28 @@ if platform.system() == "Windows":
|
|||||||
print(f"Failed to initialize accessible_output2: {e}")
|
print(f"Failed to initialize accessible_output2: {e}")
|
||||||
sys.exit()
|
sys.exit()
|
||||||
else:
|
else:
|
||||||
# Linux/Mac path - prioritize Orca remote controller
|
# Linux/Mac path - prioritize speech-dispatcher first
|
||||||
orca_remote = OrcaRemoteController()
|
try:
|
||||||
if orca_remote.available:
|
import speechd
|
||||||
speechProvider = "orca_remote"
|
spd = speechd.Client()
|
||||||
orca = orca_remote
|
speechProvider = "speechd"
|
||||||
else:
|
except ImportError:
|
||||||
try:
|
# Fall back to Orca remote controller
|
||||||
output = subprocess.check_output(["pgrep", "cthulhu"])
|
orca_remote = OrcaRemoteController()
|
||||||
speechProvider = "cthulhu"
|
if orca_remote.available:
|
||||||
except (subprocess.CalledProcessError, FileNotFoundError):
|
speechProvider = "orca_remote"
|
||||||
|
orca = orca_remote
|
||||||
|
else:
|
||||||
|
# Fall back to Cthulhu
|
||||||
try:
|
try:
|
||||||
import accessible_output2.outputs.auto
|
output = subprocess.check_output(["pgrep", "cthulhu"])
|
||||||
s = accessible_output2.outputs.auto.Auto()
|
speechProvider = "cthulhu"
|
||||||
speechProvider = "accessible_output2"
|
except (subprocess.CalledProcessError, FileNotFoundError):
|
||||||
except ImportError as e:
|
|
||||||
try:
|
try:
|
||||||
import speechd
|
import accessible_output2.outputs.auto
|
||||||
spd = speechd.Client()
|
s = accessible_output2.outputs.auto.Auto()
|
||||||
speechProvider = "speechd"
|
speechProvider = "accessible_output2"
|
||||||
except ImportError:
|
except ImportError as e:
|
||||||
print("No speech providers found.")
|
print("No speech providers found.")
|
||||||
sys.exit()
|
sys.exit()
|
||||||
|
|
||||||
@@ -1961,7 +1963,14 @@ class DoomLauncher(QMainWindow):
|
|||||||
except ImportError:
|
except ImportError:
|
||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
# On Linux, check each provider
|
# On Linux, check each provider in priority order
|
||||||
|
# Check speechd first (highest priority)
|
||||||
|
try:
|
||||||
|
import speechd
|
||||||
|
available_providers.append("speechd")
|
||||||
|
except ImportError:
|
||||||
|
pass
|
||||||
|
|
||||||
# Check Orca remote controller
|
# Check Orca remote controller
|
||||||
orca_remote = OrcaRemoteController()
|
orca_remote = OrcaRemoteController()
|
||||||
if orca_remote.available:
|
if orca_remote.available:
|
||||||
@@ -1981,13 +1990,6 @@ class DoomLauncher(QMainWindow):
|
|||||||
except ImportError:
|
except ImportError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
# Check speechd
|
|
||||||
try:
|
|
||||||
import speechd
|
|
||||||
available_providers.append("speechd")
|
|
||||||
except ImportError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
return available_providers
|
return available_providers
|
||||||
|
|
||||||
def populate_speech_methods(self):
|
def populate_speech_methods(self):
|
||||||
|
|||||||
Reference in New Issue
Block a user