cleanup error handling code

This commit is contained in:
tramhao 2021-03-02 15:40:23 +08:00
parent 20f2f0ca7e
commit 506615b67e
3 changed files with 11 additions and 29 deletions

View File

@ -43,11 +43,12 @@ func (c Command) defineCommands() {
c.define("delete_playlist", func() {
audioFile := gomu.playlist.getCurrentFile()
if !audioFile.isAudioFile {
err := confirmDeleteAllPopup(audioFile.node)
if err != nil {
errorPopup(err)
}
if audioFile.isAudioFile {
return
}
err := confirmDeleteAllPopup(audioFile.node)
if err != nil {
errorPopup(err)
}
})

View File

@ -266,33 +266,17 @@ func (p *Playlist) deleteSong(audioFile *AudioFile) (err error) {
// Deletes playlist/dir from filesystem
func (p *Playlist) deletePlaylist(audioFile *AudioFile) (err error) {
var selectedDir *AudioFile
// gets the parent dir if current focused node is not a dir
if audioFile.isAudioFile {
return nil
} else {
selectedDir = audioFile
}
err = os.RemoveAll(selectedDir.path)
err = os.RemoveAll(audioFile.path)
if err != nil {
errorPopup(err)
err = tracerr.Wrap(err)
} else {
defaultTimedPopup(
" Success ",
selectedDir.name+"\nhas been deleted successfully")
audioFile.name+"\nhas been deleted successfully")
p.refresh()
}
return nil
return err
}
// Bulk add a playlist to queue

View File

@ -129,9 +129,6 @@ func confirmationPopup(
func confirmDeleteAllPopup(selPlaylist *tview.TreeNode) (err error) {
popupID := "confirm-deleteall-input-popup"
if selPlaylist.GetReference().(*AudioFile).isAudioFile {
return fmt.Errorf("not a folder")
}
input := newInputPopup(popupID, "Are you sure to delete the folder and all files under it?", "Type DELETE to Confirm: ", "")
input.SetDoneFunc(func(key tcell.Key) {
@ -144,9 +141,9 @@ func confirmDeleteAllPopup(selPlaylist *tview.TreeNode) (err error) {
gomu.popups.pop()
if confirmationText == "DELETE" {
err := gomu.playlist.deletePlaylist(selPlaylist.GetReference().(*AudioFile))
err = gomu.playlist.deletePlaylist(selPlaylist.GetReference().(*AudioFile))
if err != nil {
logError(err)
errorPopup(err)
}
}