diff --git a/portprotonqt/app.py b/portprotonqt/app.py index 071955d..0c3dfa4 100644 --- a/portprotonqt/app.py +++ b/portprotonqt/app.py @@ -1,4 +1,6 @@ import sys +import os +import subprocess from PySide6.QtCore import QLocale, QTranslator, QLibraryInfo from PySide6.QtWidgets import QApplication from PySide6.QtGui import QIcon @@ -33,6 +35,13 @@ def main(): window = MainWindow() + if args.session: + gamescope_cmd = os.getenv("GAMESCOPE_CMD", "gamescope -f --xwayland-count 2") + cmd = f"{gamescope_cmd} -- portprotonqt" + logger.info(f"Executing: {cmd}") + subprocess.Popen(cmd, shell=True) + sys.exit(0) + if args.fullscreen: logger.info("Launching in fullscreen mode due to --fullscreen flag") save_fullscreen_config(True) diff --git a/portprotonqt/cli.py b/portprotonqt/cli.py index f781dfc..2003602 100644 --- a/portprotonqt/cli.py +++ b/portprotonqt/cli.py @@ -13,4 +13,9 @@ def parse_args(): action="store_true", help="Запустить приложение в полноэкранном режиме и сохранить эту настройку" ) + parser.add_argument( + "--session", + action="store_true", + help="Запустить приложение с использованием gamescope" + ) return parser.parse_args()