fix: disable input manager if window is not focused
Signed-off-by: Boris Yumankulov <boria138@altlinux.org>
This commit is contained in:
@@ -2238,8 +2238,6 @@ class MainWindow(QMainWindow):
|
||||
elif not child_running:
|
||||
# Игра завершилась – сбрасываем флаг, сбрасываем кнопку и останавливаем таймер
|
||||
self._gameLaunched = False
|
||||
if hasattr(self, 'input_manager'):
|
||||
self.input_manager.enable_gamepad_handling()
|
||||
self.resetPlayButton()
|
||||
#self._uninhibit_screensaver()
|
||||
if hasattr(self, 'checkProcessTimer') and self.checkProcessTimer is not None:
|
||||
@@ -2295,9 +2293,6 @@ class MainWindow(QMainWindow):
|
||||
# Проверяем, запущена ли игра
|
||||
if self.game_processes and self.target_exe == current_exe:
|
||||
# Останавливаем игру
|
||||
if hasattr(self, 'input_manager'):
|
||||
self.input_manager.enable_gamepad_handling()
|
||||
|
||||
for proc in self.game_processes:
|
||||
try:
|
||||
parent = psutil.Process(proc.pid)
|
||||
@@ -2357,10 +2352,6 @@ class MainWindow(QMainWindow):
|
||||
icon = QIcon()
|
||||
update_button.setIcon(icon)
|
||||
|
||||
# Delay disabling gamepad handling
|
||||
if hasattr(self, 'input_manager'):
|
||||
QTimer.singleShot(200, self.input_manager.disable_gamepad_handling)
|
||||
|
||||
self.checkProcessTimer = QTimer(self)
|
||||
self.checkProcessTimer.timeout.connect(self.checkTargetExe)
|
||||
self.checkProcessTimer.start(500)
|
||||
@@ -2398,9 +2389,6 @@ class MainWindow(QMainWindow):
|
||||
|
||||
# Если игра уже запущена для этого exe – останавливаем её
|
||||
if self.game_processes and self.target_exe == current_exe:
|
||||
if hasattr(self, 'input_manager'):
|
||||
self.input_manager.enable_gamepad_handling()
|
||||
|
||||
for proc in self.game_processes:
|
||||
try:
|
||||
parent = psutil.Process(proc.pid)
|
||||
@@ -2448,10 +2436,6 @@ class MainWindow(QMainWindow):
|
||||
env_vars['START_FROM_STEAM'] = '1'
|
||||
env_vars['PROCESS_LOG'] = '1'
|
||||
|
||||
# Delay disabling gamepad handling to allow rumble to complete
|
||||
if hasattr(self, 'input_manager'):
|
||||
QTimer.singleShot(200, self.input_manager.disable_gamepad_handling)
|
||||
|
||||
# Запускаем игру
|
||||
try:
|
||||
process = subprocess.Popen(entry_exec_split, env=env_vars, shell=False, preexec_fn=os.setsid)
|
||||
|
Reference in New Issue
Block a user