Preloader for load games
All checks were successful
Code check / Check code (pull_request) Successful in 1m23s
All checks were successful
Code check / Check code (pull_request) Successful in 1m23s
This commit is contained in:
@@ -14,6 +14,7 @@ from portprotonqt.custom_widgets import ClickableLabel, AutoSizeButton, NavLabel
|
||||
from portprotonqt.portproton_api import PortProtonAPI
|
||||
from portprotonqt.input_manager import InputManager
|
||||
from portprotonqt.context_menu_manager import ContextMenuManager, CustomLineEdit
|
||||
from portprotonqt.preloader import Preloader
|
||||
from portprotonqt.system_overlay import SystemOverlay
|
||||
from portprotonqt.input_manager import GamepadType
|
||||
|
||||
@@ -219,6 +220,17 @@ class MainWindow(QMainWindow):
|
||||
self.resize(width, height)
|
||||
else:
|
||||
self.showNormal()
|
||||
self._preloader = Preloader(parent=self)
|
||||
self._update_preloader_position()
|
||||
|
||||
def _update_preloader_position(self):
|
||||
if self._preloader:
|
||||
self._preloader.move(self.rect().center() - self._preloader.rect().center())
|
||||
|
||||
def _close_preloader(self):
|
||||
if self._preloader:
|
||||
self._preloader.close()
|
||||
self._preloader = None
|
||||
|
||||
def on_slider_released(self) -> None:
|
||||
"""Delegate to game library manager."""
|
||||
@@ -434,6 +446,7 @@ class MainWindow(QMainWindow):
|
||||
def on_games_loaded(self, games: list[tuple]):
|
||||
self.game_library_manager.set_games(games)
|
||||
self.progress_bar.setVisible(False)
|
||||
self._close_preloader()
|
||||
|
||||
def open_portproton_forum_topic(self, topic_name: str):
|
||||
"""Open the PortProton forum topic or search page for this game."""
|
||||
@@ -775,6 +788,7 @@ class MainWindow(QMainWindow):
|
||||
self._last_width = self.width()
|
||||
if abs(self.width() - self._last_width) > 10:
|
||||
self._last_width = self.width()
|
||||
self._update_preloader_position()
|
||||
|
||||
|
||||
def dragEnterEvent(self, event):
|
||||
|
Reference in New Issue
Block a user