[gnome-games/wip/exalm/runner-refactor: 31/56] retro-runner: Move snapshot deletion to SnapshotManager



commit c5a51a961a4ea60f05beaed76a384f55676a1772
Author: Alexander Mikhaylenko <alexm gnome org>
Date:   Fri Mar 6 18:27:05 2020 +0500

    retro-runner: Move snapshot deletion to SnapshotManager

 src/core/snapshot-manager.vala | 12 ++++++++++++
 src/retro/retro-runner.vala    | 10 +---------
 2 files changed, 13 insertions(+), 9 deletions(-)
---
diff --git a/src/core/snapshot-manager.vala b/src/core/snapshot-manager.vala
index 6371849e..8f073436 100644
--- a/src/core/snapshot-manager.vala
+++ b/src/core/snapshot-manager.vala
@@ -126,4 +126,16 @@ public class Games.SnapshotManager : Object {
 
                return snapshot;
        }
+
+       public void delete_snapshot (Savestate snapshot) {
+               Savestate[] new_snapshots = {};
+
+               foreach (var s in snapshots)
+                       if (snapshot != s)
+                               new_snapshots += s;
+
+               snapshots = new_snapshots;
+
+               snapshot.delete_from_disk ();
+       }
 }
diff --git a/src/retro/retro-runner.vala b/src/retro/retro-runner.vala
index 64b846eb..f22a96eb 100644
--- a/src/retro/retro-runner.vala
+++ b/src/retro/retro-runner.vala
@@ -465,15 +465,7 @@ public class Games.RetroRunner : Object, Runner {
        }
 
        public void delete_savestate (Savestate savestate) {
-               Savestate[] new_game_savestates = {};
-
-               foreach (var existing_savestate in game_savestates) {
-                       if (savestate != existing_savestate)
-                               new_game_savestates += existing_savestate;
-               }
-
-               game_savestates = new_game_savestates;
-               savestate.delete_from_disk ();
+               snapshot_manager.delete_snapshot (savestate);
        }
 
        private string get_options_path () throws Error {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]