mirror of
https://github.com/KytyPS5/KytyPS5.git
synced 2026-10-21 03:16:54 +02:00
launcher: add a game list refresh action (#683)
* launcher: add a game list refresh action Dropping new games into an already-configured game folder was only picked up after restarting the launcher or re-saving the global settings dialog. Add a refresh toolbar button, an F5 shortcut, and a "Refresh game list" context-menu entry, all triggering a rescan of the game folders. * launcher: do not rescan the game list while a game is running Clearing cfgs_list destroys the running ConfigurationItem: the running state is lost and the replacement items allow editing or deleting a game whose process is still active. Skip the rescan while any item is running (CodeRabbit review finding for the refresh action). * launcher: preserve game state when refreshing the list Share one refresh action across the toolbar, keyboard shortcut, and context menu. Retain running items during rescans, update their settings for the next launch, and preserve selection, filtering, and sort order. Commit active inline editors before rebuilding rows to avoid losing comments or accessing destroyed configuration data. Tie editor callbacks to item lifetime and guard the context-menu item reference. Validation: launcher build and startup check passed; 32 Qt interaction checks passed. * launcher: remove refresh from the game context menu --------- Co-authored-by: nmzik <Nmzik@mail.ru>
This commit is contained in:
@@ -44,6 +44,28 @@
|
||||
<property name="spacing">
|
||||
<number>4</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QToolButton" name="refresh_button">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>36</width>
|
||||
<height>36</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>32</width>
|
||||
<height>32</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="autoRaise">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QToolButton" name="global_settings_button">
|
||||
<property name="minimumSize">
|
||||
@@ -245,6 +267,14 @@
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
<action name="refresh_action">
|
||||
<property name="text">
|
||||
<string>Refresh game list</string>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Rescan game folders for new games</string>
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<customwidgets>
|
||||
<customwidget>
|
||||
|
||||
Reference in New Issue
Block a user