This commit is contained in:
cheykrym 2026-04-01 05:40:57 +03:00
parent 9bb3c1b2df
commit 619de20cd6
2 changed files with 13 additions and 9 deletions

2
app.py
View File

@ -69,6 +69,8 @@ def _apply_startup_display_defaults():
settings.setValue("display/theme", "night")
if not settings.contains("media/source_mode"):
settings.setValue("media/source_mode", "bluetooth")
if not settings.contains("ir_remote/enabled"):
settings.setValue("ir_remote/enabled", False)
def _apply_reset_if_requested():

View File

@ -60,18 +60,18 @@ class MainWindowNew(QMainWindow):
menu = QMenu(self.menu_button)
menu.setMinimumWidth(340)
self.menu_button.setMenu(menu)
# Кнопка "Media" - открывает текущий режим
self.act_media = menu.addAction("Media")
menu.addSeparator()
# Подменю с переключателями Bluetooth/CarPlay
self.menu_source = menu.addMenu("Режим Media")
self.act_source_bluetooth = self.menu_source.addAction("Bluetooth")
self.act_source_carplay = self.menu_source.addAction("CarPlay")
self.act_source_bluetooth.setCheckable(True)
self.act_source_carplay.setCheckable(True)
self.act_car = menu.addAction("Car")
self.act_maps = menu.addAction("Maps")
@ -107,11 +107,13 @@ class MainWindowNew(QMainWindow):
# Создаём сервис и контроллер
self._bt_service = BluetoothService(self)
self._media_controller = MediaController(self._bt_service, self)
# ИК-пульт
self._ir_service = IrRemoteService(self)
self._connect_ir_remote()
self._ir_enabled = self._settings.value("ir_remote/enabled", False)
if self._ir_enabled:
self._ir_service = IrRemoteService(self)
self._connect_ir_remote()
self.media_screen = MediaScreen(self._media_controller)
self.stack.addWidget(self.media_screen) # 0
self.stack.addWidget(StubScreen("Car")) # 1
@ -154,7 +156,7 @@ class MainWindowNew(QMainWindow):
mode_text = "Bluetooth" if self._source_mode == "bluetooth" else "CarPlay"
self.lbl_source.setText(f"Media • {mode_text}")
self.lbl_bt.setText(self.media_screen.source.text())
# Запускаем ИК-пульт
self._ir_service.start()
@ -166,7 +168,7 @@ class MainWindowNew(QMainWindow):
self._ir_service.prev_track_clicked.connect(self._on_ir_prev_track)
self._ir_service.next_track_hold.connect(self._on_ir_next_track_hold)
self._ir_service.prev_track_hold.connect(self._on_ir_prev_track_hold)
# Громкость
self._ir_service.volume_up_clicked.connect(self._on_ir_volume_up)
self._ir_service.volume_down_clicked.connect(self._on_ir_volume_down)