@@ -207,10 +207,6 @@ class MenuController: NSObject, NSMenuDelegate {
207
207
jumpTo. action = #selector( MainMenuActionHandler . menuJumpTo ( _: ) )
208
208
209
209
// -- speed
210
- ( speedUp. representedObject,
211
- speedUpSlightly. representedObject,
212
- speedDown. representedObject,
213
- speedDownSlightly. representedObject) = ( 2.0 , 1.1 , 0.5 , 0.9 )
214
210
[ speedUp, speedDown, speedUpSlightly, speedDownSlightly, speedReset] . forEach { item in
215
211
item? . action = #selector( MainMenuActionHandler . menuChangeSpeed ( _: ) )
216
212
}
@@ -314,20 +310,12 @@ class MenuController: NSObject, NSMenuDelegate {
314
310
audioTrackMenu. delegate = self
315
311
316
312
// - volume
317
- ( increaseVolume. representedObject,
318
- decreaseVolume. representedObject,
319
- increaseVolumeSlightly. representedObject,
320
- decreaseVolumeSlightly. representedObject) = ( 5 , - 5 , 1 , - 1 )
321
313
[ increaseVolume, decreaseVolume, increaseVolumeSlightly, decreaseVolumeSlightly] . forEach { item in
322
314
item? . action = #selector( MainMenuActionHandler . menuChangeVolume ( _: ) )
323
315
}
324
316
mute. action = #selector( MainMenuActionHandler . menuToggleMute ( _: ) )
325
317
326
318
// - audio delay
327
- ( increaseAudioDelay. representedObject,
328
- increaseAudioDelaySlightly. representedObject,
329
- decreaseAudioDelay. representedObject,
330
- decreaseAudioDelaySlightly. representedObject) = ( 0.5 , 0.1 , - 0.5 , - 0.1 )
331
319
[ increaseAudioDelay, decreaseAudioDelay, increaseAudioDelaySlightly, decreaseAudioDelaySlightly] . forEach { item in
332
320
item? . action = #selector( MainMenuActionHandler . menuChangeAudioDelay ( _: ) )
333
321
}
@@ -360,10 +348,6 @@ class MenuController: NSObject, NSMenuDelegate {
360
348
}
361
349
362
350
// - delay
363
- ( increaseSubDelay. representedObject,
364
- increaseSubDelaySlightly. representedObject,
365
- decreaseSubDelay. representedObject,
366
- decreaseSubDelaySlightly. representedObject) = ( 0.5 , 0.1 , - 0.5 , - 0.1 )
367
351
[ increaseSubDelay, decreaseSubDelay, increaseSubDelaySlightly, decreaseSubDelaySlightly] . forEach { item in
368
352
item? . action = #selector( MainMenuActionHandler . menuChangeSubDelay ( _: ) )
369
353
}
@@ -733,9 +717,19 @@ class MenuController: NSObject, NSMenuDelegate {
733
717
break
734
718
}
735
719
}
720
+
736
721
if !bound {
737
722
menuItem. keyEquivalent = " "
738
723
menuItem. keyEquivalentModifierMask = [ ]
724
+
725
+ // Need to regenerate `title` and `representedObject` from their default values.
726
+ // This is needed for the case where the menu item previously matched to a key binding, but now there is no match.
727
+ // Obviously this is a little kludgey, but it avoids having to do a big refactor and/or writing a bunch of new code.
728
+ let ( _, value) = sameKeyAction ( actions, actions, normalizeLastNum, numRange)
729
+ if let value = value, let l10nKey = l10nKey {
730
+ menuItem. title = String ( format: NSLocalizedString ( " menu. " + l10nKey, comment: " " ) , abs ( value) )
731
+ menuItem. representedObject = value
732
+ }
739
733
}
740
734
}
741
735
}
0 commit comments