refactor: generic SliceContains

This commit is contained in:
Drew Weymouth
2023-04-29 10:21:40 -07:00
parent 329b290d61
commit 31e82ae367
3 changed files with 7 additions and 16 deletions
+1 -1
View File
@@ -125,7 +125,7 @@ func (a *App) setupMPV() error {
a.Player.SetAudioDevice(desiredDevice)
rgainOpts := []string{ReplayGainNone, ReplayGainAlbum, ReplayGainTrack}
if !sharedutil.StringSliceContains(rgainOpts, a.Config.ReplayGain.Mode) {
if !sharedutil.SliceContains(rgainOpts, a.Config.ReplayGain.Mode) {
a.Config.ReplayGain.Mode = ReplayGainNone
}
a.Player.SetReplayGainOptions(player.ReplayGainOptions{
+5 -14
View File
@@ -7,18 +7,9 @@ import (
"github.com/dweymouth/go-subsonic/subsonic"
)
func StringSliceContains(slice []string, str string) bool {
for _, s := range slice {
if s == str {
return true
}
}
return false
}
func IntSliceContains(slice []int, i int) bool {
for _, x := range slice {
if x == i {
func SliceContains[T comparable](ts []T, t T) bool {
for _, x := range ts {
if x == t {
return true
}
}
@@ -85,7 +76,7 @@ func ReorderTracks(tracks []*subsonic.Child, idxToMove []int, op TrackReorderOp)
topIdx := 0
botIdx := len(idxToMove)
for i, t := range tracks {
if IntSliceContains(idxToMove, i) {
if SliceContains(idxToMove, i) {
newTracks[topIdx] = t
topIdx++
} else {
@@ -97,7 +88,7 @@ func ReorderTracks(tracks []*subsonic.Child, idxToMove []int, op TrackReorderOp)
topIdx := 0
botIdx := len(tracks) - len(idxToMove)
for i, t := range tracks {
if IntSliceContains(idxToMove, i) {
if SliceContains(idxToMove, i) {
newTracks[botIdx] = t
botIdx++
} else {
+1 -1
View File
@@ -67,7 +67,7 @@ func NewAlbumsPage(cfg *backend.AlbumsPageConfig, contr *controller.Controller,
SizeName: theme.SizeNameHeadingText,
}
a.sortOrder = NewSelect(backend.AlbumSortOrders, a.onSortOrderChanged)
if !sharedutil.StringSliceContains(backend.AlbumSortOrders, cfg.SortOrder) {
if !sharedutil.SliceContains(backend.AlbumSortOrders, cfg.SortOrder) {
cfg.SortOrder = string(backend.AlbumSortRecentlyAdded)
}
a.sortOrder.Selected = cfg.SortOrder