@@ -186,12 +186,17 @@ class StopWatchManager: ObservableObject {
186186 solveItem. penalty = penType. rawValue
187187 // .puzzle_id
188188 solveItem. session = currentSession
189- solveItem. scramble = prevScrambleStr
189+ // Use the current scramble if stopped from manual input
190+ solveItem. scramble = time == nil ? prevScrambleStr : scrambleStr
190191 solveItem. scramble_type = currentSession. scramble_type
191192 solveItem. scramble_subtype = 0
192193 solveItem. time = self . secondsElapsed
193194 try ! managedObjectContext. save ( )
194195
196+ // Rescramble if from manual input
197+ if time != nil {
198+ rescramble ( )
199+ }
195200 }
196201
197202
@@ -247,8 +252,10 @@ class StopWatchManager: ObservableObject {
247252 timerColour = TimerTextColours . timerDefaultColour
248253
249254
250- if !prevDownStoppedTimer && mode == . stopped && inspectionEnabled {
255+ if inspectionEnabled && mode == . stopped && !prevDownStoppedTimer {
251256 startInspection ( )
257+ rescramble ( )
258+ justInspected = true
252259 }
253260
254261
@@ -257,15 +264,7 @@ class StopWatchManager: ObservableObject {
257264 showPenOptions = false
258265 }
259266 }
260-
261-
262-
263267 prevDownStoppedTimer = false
264-
265- if inspectionEnabled && mode == . stopped && !justInspected && prevDownStoppedTimer {
266- startInspection ( )
267- justInspected = true
268- }
269268}
270269
271270
@@ -287,15 +286,15 @@ class StopWatchManager: ObservableObject {
287286 if !inspectionEnabled {
288287 rescramble ( )
289288 }
289+ } else if inspectionEnabled && mode == . stopped && !justInspected {
290+ startInspection ( )
291+ rescramble ( )
292+ justInspected = true
290293 }
291294 }
292295
293296
294- if inspectionEnabled && mode == . stopped && !justInspected && !prevDownStoppedTimer {
295- startInspection ( )
296- rescramble ( )
297- justInspected = true
298- }
297+
299298 prevDownStoppedTimer = false
300299 }
301300
0 commit comments