diff --git a/ui/util/trackcontextmenu.go b/ui/util/trackcontextmenu.go index b6e881f..7eb5399 100644 --- a/ui/util/trackcontextmenu.go +++ b/ui/util/trackcontextmenu.go @@ -31,6 +31,12 @@ func NewTrackContextMenu(disablePlaybackMenu bool, auxItems []*fyne.MenuItem) *T tcm := &TrackContextMenu{} tcm.menu = fyne.NewMenu("") + tcm.songRadioMenuItem = fyne.NewMenuItem(lang.L("Play song radio"), func() { + if tcm.OnPlaySongRadio != nil { + tcm.OnPlaySongRadio() + } + }) + tcm.songRadioMenuItem.Icon = myTheme.RadioIcon if !disablePlaybackMenu { play := fyne.NewMenuItem(lang.L("Play"), func() { if tcm.OnPlay != nil { @@ -56,12 +62,6 @@ func NewTrackContextMenu(disablePlaybackMenu bool, auxItems []*fyne.MenuItem) *T } }) add.Icon = theme.ContentAddIcon() - tcm.songRadioMenuItem = fyne.NewMenuItem(lang.L("Play song radio"), func() { - if tcm.OnPlaySongRadio != nil { - tcm.OnPlaySongRadio() - } - }) - tcm.songRadioMenuItem.Icon = myTheme.RadioIcon tcm.menu.Items = append(tcm.menu.Items, play, shuffle, playNext, add, tcm.songRadioMenuItem) } @@ -104,6 +104,9 @@ func NewTrackContextMenu(disablePlaybackMenu bool, auxItems []*fyne.MenuItem) *T }) tcm.shareMenuItem.Icon = myTheme.ShareIcon tcm.menu.Items = append(tcm.menu.Items, tcm.shareMenuItem) + if disablePlaybackMenu { + tcm.menu.Items = append(tcm.menu.Items, tcm.songRadioMenuItem) + } tcm.menu.Items = append(tcm.menu.Items, fyne.NewMenuItemSeparator()) tcm.menu.Items = append(tcm.menu.Items, favorite, unfavorite) tcm.ratingSubmenu = NewRatingSubmenu(func(rating int) { diff --git a/ui/widgets/tracklist.go b/ui/widgets/tracklist.go index ea84323..01bfa39 100644 --- a/ui/widgets/tracklist.go +++ b/ui/widgets/tracklist.go @@ -41,10 +41,6 @@ type TracklistOptions struct { // must be set before the context menu is shown for the first time AuxiliaryMenuItems []*fyne.MenuItem - // DisablePlaybackMenu sets whether to disable playback options in - // the tracklist context menu. - DisablePlaybackMenu bool - // Disables sorting the tracklist by clicking individual columns. DisableSorting bool @@ -518,7 +514,7 @@ func (t *Tracklist) onShowContextMenu(e *fyne.PointEvent, trackIdx int) { t.list.Refresh() } if t.ctxMenu == nil { - t.ctxMenu = util.NewTrackContextMenu(t.Options.DisablePlaybackMenu, t.Options.AuxiliaryMenuItems) + t.ctxMenu = util.NewTrackContextMenu(false, t.Options.AuxiliaryMenuItems) t.ctxMenu.OnPlay = func(shuffle bool) { t.OnPlaySelection(t.SelectedTracks(), shuffle) }