Ticket #8522: replay-last-marker.diff

File replay-last-marker.diff, 1.4 KB (added by nicolas17, 13 years ago)
  • src/org/openstreetmap/josm/actions/audio/AudioPlayPauseAction.java

    diff --git a/src/org/openstreetmap/josm/actions/audio/AudioPlayPauseAction.java b/src/org/openstreetmap/josm/actions/audio/AudioPlayPauseAction.java
    index 539a7dc..52d7b67 100644
    a b import java.awt.event.KeyEvent;  
    88import java.net.URL;
    99
    1010import org.openstreetmap.josm.actions.JosmAction;
     11import org.openstreetmap.josm.gui.layer.markerlayer.AudioMarker;
    1112import org.openstreetmap.josm.gui.layer.markerlayer.MarkerLayer;
    1213import org.openstreetmap.josm.tools.AudioPlayer;
    1314import org.openstreetmap.josm.tools.Shortcut;
    public class AudioPlayPauseAction extends JosmAction {  
    3031                else
    3132                    AudioPlayer.pause();
    3233            } else {
    33                 // find first audio marker to play
    34                 MarkerLayer.playAudio();
     34                // play the last-played marker again, if there is one
     35                AudioMarker lastPlayed = AudioMarker.recentlyPlayedMarker();
     36                if (lastPlayed != null) {
     37                    lastPlayed.play();
     38                } else {
     39                    // If no marker was played recently, play the first one
     40                    MarkerLayer.playAudio();
     41                }
    3542            }
    3643        } catch (Exception ex) {
    3744            AudioPlayer.audioMalfunction(ex);