From 0edf2eb49123afcbe89fa66e83d1c5109ae19a6a Mon Sep 17 00:00:00 2001 From: Anonymus Raccoon <32224410+AnonymusRaccoon@users.noreply.github.com> Date: Mon, 1 Jul 2019 17:11:44 +0200 Subject: [PATCH] Adding more actions to add songs to the favorites. --- Opus/Code/Api/SongManager.cs | 4 +- Opus/Code/UI/Adapter/LineAdapter.cs | 14 +- Opus/Code/UI/Fragments/Browse.cs | 13 +- Opus/Code/UI/Fragments/FolderTracks.cs | 15 +- Opus/Code/UI/Fragments/PlaylistTracks.cs | 7 +- Opus/Code/UI/Fragments/Queue.cs | 7 +- Opus/Code/UI/Fragments/YoutubeSearch.cs | 13 +- Opus/Resources/Resource.Designer.cs | 608 ++++++++++++----------- Opus/Resources/values-fr/strings.xml | 2 + Opus/Resources/values/strings.xml | 2 + 10 files changed, 368 insertions(+), 317 deletions(-) diff --git a/Opus/Code/Api/SongManager.cs b/Opus/Code/Api/SongManager.cs index 72bde82..5fb285e 100644 --- a/Opus/Code/Api/SongManager.cs +++ b/Opus/Code/Api/SongManager.cs @@ -109,9 +109,9 @@ namespace Opus.Api /// /// /// - public async static Task IsFavorite(Song song) + public static Task IsFavorite(Song song) { - return await Task.Run(() => + return Task.Run(() => { SQLiteConnection db = new SQLiteConnection(System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), "Favorites.sqlite")); db.CreateTable(); diff --git a/Opus/Code/UI/Adapter/LineAdapter.cs b/Opus/Code/UI/Adapter/LineAdapter.cs index 353304d..9a5b4a0 100644 --- a/Opus/Code/UI/Adapter/LineAdapter.cs +++ b/Opus/Code/UI/Adapter/LineAdapter.cs @@ -19,7 +19,7 @@ namespace Opus.Adapter public RecyclerView recycler; public int listPadding = 0; private readonly bool UseQueue = false; - private List songList; + private readonly List songList; private bool isEmpty = false; public override int ItemCount @@ -165,7 +165,7 @@ namespace Opus.Adapter SongManager.Play(songList[position]); } - void OnLongClick(int position) + async void OnLongClick(int position) { Song item = songList[position]; @@ -229,6 +229,11 @@ namespace Opus.Adapter })); } + if (await SongManager.IsFavorite(item)) + actions.Add(new BottomSheetAction(Resource.Drawable.Fav, MainActivity.instance.Resources.GetString(Resource.String.unfav), (sender, eventArg) => { SongManager.UnFav(item); bottomSheet.Dismiss(); })); + else + actions.Add(new BottomSheetAction(Resource.Drawable.Unfav, MainActivity.instance.Resources.GetString(Resource.String.fav), (sender, eventArg) => { SongManager.Fav(item); bottomSheet.Dismiss(); })); + bottomSheet.FindViewById(Resource.Id.bsItems).Adapter = new BottomSheetAdapter(MainActivity.instance, Resource.Layout.BottomSheetText, actions); bottomSheet.Show(); } @@ -309,6 +314,11 @@ namespace Opus.Adapter } } + if (await SongManager.IsFavorite(item)) + actions.Add(new BottomSheetAction(Resource.Drawable.Fav, MainActivity.instance.Resources.GetString(Resource.String.unfav), (sender, eventArg) => { SongManager.UnFav(item); bottomSheet.Dismiss(); })); + else + actions.Add(new BottomSheetAction(Resource.Drawable.Unfav, MainActivity.instance.Resources.GetString(Resource.String.fav), (sender, eventArg) => { SongManager.Fav(item); bottomSheet.Dismiss(); })); + bottomSheet.FindViewById(Resource.Id.bsItems).Adapter = new BottomSheetAdapter(MainActivity.instance, Resource.Layout.BottomSheetText, actions); bottomSheet.Show(); } diff --git a/Opus/Code/UI/Fragments/Browse.cs b/Opus/Code/UI/Fragments/Browse.cs index 5ca1fea..e0c40f0 100644 --- a/Opus/Code/UI/Fragments/Browse.cs +++ b/Opus/Code/UI/Fragments/Browse.cs @@ -150,7 +150,7 @@ namespace Opus.Fragments LoaderManager.GetInstance(this).RestartLoader(0, null, this); } - public void More(Song item) + public async void More(Song item) { item = LocalManager.CompleteItem(item); @@ -171,14 +171,21 @@ namespace Opus.Fragments Picasso.With(MainActivity.instance).Load(songAlbumArtUri).Placeholder(Resource.Drawable.noAlbum).Resize(400, 400).CenterCrop().Into(bottomView.FindViewById(Resource.Id.bsArt)); } - bottomSheet.FindViewById(Resource.Id.bsItems).Adapter = new BottomSheetAdapter(MainActivity.instance, Resource.Layout.BottomSheetText, new List + List actions = new List { new BottomSheetAction(Resource.Drawable.Play, MainActivity.instance.Resources.GetString(Resource.String.play), (sender, eventArg) => { SongManager.Play(item); bottomSheet.Dismiss(); }), new BottomSheetAction(Resource.Drawable.PlaylistPlay, MainActivity.instance.Resources.GetString(Resource.String.play_next), (sender, eventArg) => { SongManager.PlayNext(item); bottomSheet.Dismiss(); }), new BottomSheetAction(Resource.Drawable.Queue, MainActivity.instance.Resources.GetString(Resource.String.play_last), (sender, eventArg) => { SongManager.PlayLast(item); bottomSheet.Dismiss(); }), new BottomSheetAction(Resource.Drawable.PlaylistAdd, MainActivity.instance.Resources.GetString(Resource.String.add_to_playlist), (sender, eventArg) => { PlaylistManager.AddSongToPlaylistDialog(item); bottomSheet.Dismiss(); }), new BottomSheetAction(Resource.Drawable.Edit, MainActivity.instance.Resources.GetString(Resource.String.edit_metadata), (sender, eventArg) => { LocalManager.EditMetadata(item); bottomSheet.Dismiss(); }) - }); + }; + + if (await SongManager.IsFavorite(item)) + actions.Add(new BottomSheetAction(Resource.Drawable.Fav, MainActivity.instance.Resources.GetString(Resource.String.unfav), (sender, eventArg) => { SongManager.UnFav(item); bottomSheet.Dismiss(); })); + else + actions.Add(new BottomSheetAction(Resource.Drawable.Unfav, MainActivity.instance.Resources.GetString(Resource.String.fav), (sender, eventArg) => { SongManager.Fav(item); bottomSheet.Dismiss(); })); + + bottomSheet.FindViewById(Resource.Id.bsItems).Adapter = new BottomSheetAdapter(MainActivity.instance, Resource.Layout.BottomSheetText, actions); bottomSheet.Show(); } diff --git a/Opus/Code/UI/Fragments/FolderTracks.cs b/Opus/Code/UI/Fragments/FolderTracks.cs index c686210..005a1dc 100644 --- a/Opus/Code/UI/Fragments/FolderTracks.cs +++ b/Opus/Code/UI/Fragments/FolderTracks.cs @@ -137,7 +137,7 @@ namespace Opus.Fragments LoaderManager.GetInstance(this).RestartLoader(0, null, this); } - public void More(Song item, int position) + public async void More(Song item, int position) { BottomSheetDialog bottomSheet = new BottomSheetDialog(MainActivity.instance); View bottomView = LayoutInflater.Inflate(Resource.Layout.BottomSheet, null); @@ -156,9 +156,9 @@ namespace Opus.Fragments } bottomSheet.SetContentView(bottomView); - bottomSheet.FindViewById(Resource.Id.bsItems).Adapter = new BottomSheetAdapter(MainActivity.instance, Resource.Layout.BottomSheetText, new List + List actions = new List { - new BottomSheetAction(Resource.Drawable.Play, Resources.GetString(Resource.String.play), (sender, eventArg) => + new BottomSheetAction(Resource.Drawable.Play, Resources.GetString(Resource.String.play), (sender, eventArg) => { LocalManager.PlayInOrder(path, position); bottomSheet.Dismiss(); @@ -167,7 +167,14 @@ namespace Opus.Fragments new BottomSheetAction(Resource.Drawable.Queue, Resources.GetString(Resource.String.play_last), (sender, eventArg) => { SongManager.PlayLast(item); bottomSheet.Dismiss(); }), new BottomSheetAction(Resource.Drawable.PlaylistAdd, Resources.GetString(Resource.String.add_to_playlist), (sender, eventArg) => { PlaylistManager.AddSongToPlaylistDialog(item); bottomSheet.Dismiss(); }), new BottomSheetAction(Resource.Drawable.Edit, Resources.GetString(Resource.String.edit_metadata), (sender, eventArg) => { LocalManager.EditMetadata(item); bottomSheet.Dismiss(); }) - }); + }; + + if (await SongManager.IsFavorite(item)) + actions.Add(new BottomSheetAction(Resource.Drawable.Fav, MainActivity.instance.Resources.GetString(Resource.String.unfav), (sender, eventArg) => { SongManager.UnFav(item); bottomSheet.Dismiss(); })); + else + actions.Add(new BottomSheetAction(Resource.Drawable.Unfav, MainActivity.instance.Resources.GetString(Resource.String.fav), (sender, eventArg) => { SongManager.Fav(item); bottomSheet.Dismiss(); })); + + bottomSheet.FindViewById(Resource.Id.bsItems).Adapter = new BottomSheetAdapter(MainActivity.instance, Resource.Layout.BottomSheetText, actions); bottomSheet.Show(); } diff --git a/Opus/Code/UI/Fragments/PlaylistTracks.cs b/Opus/Code/UI/Fragments/PlaylistTracks.cs index f814ca0..762d123 100644 --- a/Opus/Code/UI/Fragments/PlaylistTracks.cs +++ b/Opus/Code/UI/Fragments/PlaylistTracks.cs @@ -456,7 +456,7 @@ namespace Opus.Fragments } } - public void More(Song song, int position) + public async void More(Song song, int position) { BottomSheetDialog bottomSheet = new BottomSheetDialog(MainActivity.instance); View bottomView = LayoutInflater.Inflate(Resource.Layout.BottomSheet, null); @@ -545,6 +545,11 @@ namespace Opus.Fragments } } + if (await SongManager.IsFavorite(song)) + actions.Add(new BottomSheetAction(Resource.Drawable.Fav, MainActivity.instance.Resources.GetString(Resource.String.unfav), (sender, eventArg) => { SongManager.UnFav(song); bottomSheet.Dismiss(); })); + else + actions.Add(new BottomSheetAction(Resource.Drawable.Unfav, MainActivity.instance.Resources.GetString(Resource.String.fav), (sender, eventArg) => { SongManager.Fav(song); bottomSheet.Dismiss(); })); + bottomSheet.FindViewById(Resource.Id.bsItems).Adapter = new BottomSheetAdapter(MainActivity.instance, Resource.Layout.BottomSheetText, actions); bottomSheet.Show(); } diff --git a/Opus/Code/UI/Fragments/Queue.cs b/Opus/Code/UI/Fragments/Queue.cs index b6d54cf..1399586 100644 --- a/Opus/Code/UI/Fragments/Queue.cs +++ b/Opus/Code/UI/Fragments/Queue.cs @@ -168,7 +168,7 @@ public class Queue : Fragment, RecyclerView.IOnItemTouchListener, PopupMenu.IOnM More(position); } - public void More(int position) + public async void More(int position) { Song item = MusicPlayer.queue[position]; @@ -230,6 +230,11 @@ public class Queue : Fragment, RecyclerView.IOnItemTouchListener, PopupMenu.IOnM })); } + if (await SongManager.IsFavorite(item)) + actions.Add(new BottomSheetAction(Resource.Drawable.Fav, MainActivity.instance.Resources.GetString(Resource.String.unfav), (sender, eventArg) => { SongManager.UnFav(item); bottomSheet.Dismiss(); })); + else + actions.Add(new BottomSheetAction(Resource.Drawable.Unfav, MainActivity.instance.Resources.GetString(Resource.String.fav), (sender, eventArg) => { SongManager.Fav(item); bottomSheet.Dismiss(); })); + bottomSheet.FindViewById(Resource.Id.bsItems).Adapter = new BottomSheetAdapter(MainActivity.instance, Resource.Layout.BottomSheetText, actions); bottomSheet.Show(); } diff --git a/Opus/Code/UI/Fragments/YoutubeSearch.cs b/Opus/Code/UI/Fragments/YoutubeSearch.cs index 8b4ac19..725ec47 100644 --- a/Opus/Code/UI/Fragments/YoutubeSearch.cs +++ b/Opus/Code/UI/Fragments/YoutubeSearch.cs @@ -370,7 +370,7 @@ namespace Opus.Fragments } } - public void More(Song item) + public async void More(Song item) { BottomSheetDialog bottomSheet = new BottomSheetDialog(MainActivity.instance); View bottomView = MainActivity.instance.LayoutInflater.Inflate(Resource.Layout.BottomSheet, null); @@ -379,7 +379,7 @@ namespace Opus.Fragments Picasso.With(MainActivity.instance).Load(item.Album).Placeholder(Resource.Drawable.noAlbum).Transform(new RemoveBlackBorder(true)).Into(bottomView.FindViewById(Resource.Id.bsArt)); bottomSheet.SetContentView(bottomView); - bottomSheet.FindViewById(Resource.Id.bsItems).Adapter = new BottomSheetAdapter(MainActivity.instance, Resource.Layout.BottomSheetText, new List + List actions = new List { new BottomSheetAction(Resource.Drawable.Play, MainActivity.instance.Resources.GetString(Resource.String.play), (sender, eventArg) => { @@ -416,7 +416,14 @@ namespace Opus.Fragments ChannelManager.OpenChannelTab(item.ChannelID); bottomSheet.Dismiss(); }) - }); + }; + + if (await SongManager.IsFavorite(item)) + actions.Add(new BottomSheetAction(Resource.Drawable.Fav, MainActivity.instance.Resources.GetString(Resource.String.unfav), (sender, eventArg) => { SongManager.UnFav(item); bottomSheet.Dismiss(); })); + else + actions.Add(new BottomSheetAction(Resource.Drawable.Unfav, MainActivity.instance.Resources.GetString(Resource.String.fav), (sender, eventArg) => { SongManager.Fav(item); bottomSheet.Dismiss(); })); + + bottomSheet.FindViewById(Resource.Id.bsItems).Adapter = new BottomSheetAdapter(MainActivity.instance, Resource.Layout.BottomSheetText, actions); bottomSheet.Show(); } diff --git a/Opus/Resources/Resource.Designer.cs b/Opus/Resources/Resource.Designer.cs index 1769390..f9a603d 100644 --- a/Opus/Resources/Resource.Designer.cs +++ b/Opus/Resources/Resource.Designer.cs @@ -7183,44 +7183,44 @@ namespace Opus // aapt resource value: 0x7f0d0072 public const int abc_toolbar_collapse_description = 2131558514; - // aapt resource value: 0x7f0d014e - public const int about = 2131558734; + // aapt resource value: 0x7f0d0150 + public const int about = 2131558736; - // aapt resource value: 0x7f0d013c - public const int add = 2131558716; + // aapt resource value: 0x7f0d013e + public const int add = 2131558718; - // aapt resource value: 0x7f0d00ff - public const int add_playlist = 2131558655; + // aapt resource value: 0x7f0d0101 + public const int add_playlist = 2131558657; - // aapt resource value: 0x7f0d0113 - public const int add_playlist_msg = 2131558675; + // aapt resource value: 0x7f0d0115 + public const int add_playlist_msg = 2131558677; - // aapt resource value: 0x7f0d00e1 - public const int add_to_library = 2131558625; + // aapt resource value: 0x7f0d00e3 + public const int add_to_library = 2131558627; // aapt resource value: 0x7f0d00d2 public const int add_to_playlist = 2131558610; - // aapt resource value: 0x7f0d00db - public const int add_to_queue = 2131558619; + // aapt resource value: 0x7f0d00dd + public const int add_to_queue = 2131558621; - // aapt resource value: 0x7f0d0123 - public const int album = 2131558691; + // aapt resource value: 0x7f0d0125 + public const int album = 2131558693; - // aapt resource value: 0x7f0d00ed - public const int all = 2131558637; + // aapt resource value: 0x7f0d00ef + public const int all = 2131558639; // aapt resource value: 0x7f0d0080 public const int appbar_scrolling_view_behavior = 2131558528; - // aapt resource value: 0x7f0d0146 - public const int appearances = 2131558726; + // aapt resource value: 0x7f0d0148 + public const int appearances = 2131558728; - // aapt resource value: 0x7f0d0139 - public const int apply = 2131558713; + // aapt resource value: 0x7f0d013b + public const int apply = 2131558715; - // aapt resource value: 0x7f0d0122 - public const int artist = 2131558690; + // aapt resource value: 0x7f0d0124 + public const int artist = 2131558692; // aapt resource value: 0x7f0d00cb public const int autoplay = 2131558603; @@ -7228,17 +7228,17 @@ namespace Opus // aapt resource value: 0x7f0d00cc public const int autoplay_desc = 2131558604; - // aapt resource value: 0x7f0d0115 - public const int badplaylisturl = 2131558677; + // aapt resource value: 0x7f0d0117 + public const int badplaylisturl = 2131558679; - // aapt resource value: 0x7f0d0140 - public const int behavior = 2131558720; + // aapt resource value: 0x7f0d0142 + public const int behavior = 2131558722; - // aapt resource value: 0x7f0d0163 - public const int beta_available = 2131558755; + // aapt resource value: 0x7f0d0165 + public const int beta_available = 2131558757; - // aapt resource value: 0x7f0d014b - public const int black_theme = 2131558731; + // aapt resource value: 0x7f0d014d + public const int black_theme = 2131558733; // aapt resource value: 0x7f0d0081 public const int bottom_sheet_behavior = 2131558529; @@ -7246,17 +7246,17 @@ namespace Opus // aapt resource value: 0x7f0d00b2 public const int browse = 2131558578; - // aapt resource value: 0x7f0d013a - public const int cancel = 2131558714; + // aapt resource value: 0x7f0d013c + public const int cancel = 2131558716; - // aapt resource value: 0x7f0d0169 - public const int cancelling = 2131558761; + // aapt resource value: 0x7f0d016b + public const int cancelling = 2131558763; - // aapt resource value: 0x7f0d00f5 - public const int cant_delete = 2131558645; + // aapt resource value: 0x7f0d00f7 + public const int cant_delete = 2131558647; - // aapt resource value: 0x7f0d0166 - public const int cant_play_non_youtube = 2131558758; + // aapt resource value: 0x7f0d0168 + public const int cant_play_non_youtube = 2131558760; // aapt resource value: 0x7f0d00b8 public const int cast = 2131558584; @@ -7339,11 +7339,11 @@ namespace Opus // aapt resource value: 0x7f0d0015 public const int cast_play = 2131558421; - // aapt resource value: 0x7f0d0137 - public const int cast_queue_push = 2131558711; + // aapt resource value: 0x7f0d0139 + public const int cast_queue_push = 2131558713; - // aapt resource value: 0x7f0d0138 - public const int cast_queue_pushed = 2131558712; + // aapt resource value: 0x7f0d013a + public const int cast_queue_pushed = 2131558714; // aapt resource value: 0x7f0d0016 public const int cast_rewind = 2131558422; @@ -7393,14 +7393,14 @@ namespace Opus // aapt resource value: 0x7f0d0025 public const int cast_unmute = 2131558437; - // aapt resource value: 0x7f0d0125 - public const int change_albumart = 2131558693; + // aapt resource value: 0x7f0d0127 + public const int change_albumart = 2131558695; - // aapt resource value: 0x7f0d012a - public const int changes_saved = 2131558698; + // aapt resource value: 0x7f0d012c + public const int changes_saved = 2131558700; - // aapt resource value: 0x7f0d00ef - public const int channels = 2131558639; + // aapt resource value: 0x7f0d00f1 + public const int channels = 2131558641; // aapt resource value: 0x7f0d0082 public const int character_counter_content_description = 2131558530; @@ -7408,8 +7408,8 @@ namespace Opus // aapt resource value: 0x7f0d0083 public const int character_counter_pattern = 2131558531; - // aapt resource value: 0x7f0d014d - public const int check_updates = 2131558733; + // aapt resource value: 0x7f0d014f + public const int check_updates = 2131558735; // aapt resource value: 0x7f0d002b public const int common_google_play_services_enable_button = 2131558443; @@ -7465,14 +7465,14 @@ namespace Opus // aapt resource value: 0x7f0d003b public const int common_signin_button_text_long = 2131558459; - // aapt resource value: 0x7f0d0136 - public const int completed = 2131558710; + // aapt resource value: 0x7f0d0138 + public const int completed = 2131558712; - // aapt resource value: 0x7f0d015d - public const int country_blocked = 2131558749; + // aapt resource value: 0x7f0d015f + public const int country_blocked = 2131558751; - // aapt resource value: 0x7f0d011b - public const int create_local = 2131558683; + // aapt resource value: 0x7f0d011d + public const int create_local = 2131558685; // aapt resource value: 0x7f0d00cd public const int create_mix = 2131558605; @@ -7480,74 +7480,74 @@ namespace Opus // aapt resource value: 0x7f0d00d1 public const int create_mix_from_song = 2131558609; - // aapt resource value: 0x7f0d0117 - public const int create_playlist = 2131558679; + // aapt resource value: 0x7f0d0119 + public const int create_playlist = 2131558681; - // aapt resource value: 0x7f0d011d - public const int create_synced = 2131558685; + // aapt resource value: 0x7f0d011f + public const int create_synced = 2131558687; - // aapt resource value: 0x7f0d011c - public const int create_youtube = 2131558684; + // aapt resource value: 0x7f0d011e + public const int create_youtube = 2131558686; - // aapt resource value: 0x7f0d014a - public const int dark_theme = 2131558730; + // aapt resource value: 0x7f0d014c + public const int dark_theme = 2131558732; - // aapt resource value: 0x7f0d00dd - public const int delete = 2131558621; + // aapt resource value: 0x7f0d00df + public const int delete = 2131558623; - // aapt resource value: 0x7f0d010f - public const int delete_playlist = 2131558671; + // aapt resource value: 0x7f0d0111 + public const int delete_playlist = 2131558673; - // aapt resource value: 0x7f0d0130 - public const int deleted_file = 2131558704; + // aapt resource value: 0x7f0d0132 + public const int deleted_file = 2131558706; // aapt resource value: 0x7f0d00d4 public const int download = 2131558612; - // aapt resource value: 0x7f0d0127 - public const int download_albumart = 2131558695; + // aapt resource value: 0x7f0d0129 + public const int download_albumart = 2131558697; - // aapt resource value: 0x7f0d0142 - public const int download_directory = 2131558722; + // aapt resource value: 0x7f0d0144 + public const int download_directory = 2131558724; - // aapt resource value: 0x7f0d0128 - public const int download_meta = 2131558696; - - // aapt resource value: 0x7f0d00f1 - public const int download_path_error = 2131558641; - - // aapt resource value: 0x7f0d00f0 - public const int download_path_not_set = 2131558640; - - // aapt resource value: 0x7f0d012f - public const int download_queue = 2131558703; - - // aapt resource value: 0x7f0d0133 - public const int downloader_playlist = 2131558707; + // aapt resource value: 0x7f0d012a + public const int download_meta = 2131558698; // aapt resource value: 0x7f0d00f3 - public const int downloading = 2131558643; + public const int download_path_error = 2131558643; - // aapt resource value: 0x7f0d0167 - public const int downloading_notification = 2131558759; + // aapt resource value: 0x7f0d00f2 + public const int download_path_not_set = 2131558642; - // aapt resource value: 0x7f0d0134 - public const int downloading_status = 2131558708; + // aapt resource value: 0x7f0d0131 + public const int download_queue = 2131558705; - // aapt resource value: 0x7f0d0164 - public const int downloading_update = 2131558756; + // aapt resource value: 0x7f0d0135 + public const int downloader_playlist = 2131558709; + + // aapt resource value: 0x7f0d00f5 + public const int downloading = 2131558645; + + // aapt resource value: 0x7f0d0169 + public const int downloading_notification = 2131558761; + + // aapt resource value: 0x7f0d0136 + public const int downloading_status = 2131558710; + + // aapt resource value: 0x7f0d0166 + public const int downloading_update = 2131558758; // aapt resource value: 0x7f0d00d3 public const int edit_metadata = 2131558611; - // aapt resource value: 0x7f0d0105 - public const int element = 2131558661; + // aapt resource value: 0x7f0d0107 + public const int element = 2131558663; - // aapt resource value: 0x7f0d0106 - public const int elements = 2131558662; + // aapt resource value: 0x7f0d0108 + public const int elements = 2131558664; - // aapt resource value: 0x7f0d00e8 - public const int empty_queue = 2131558632; + // aapt resource value: 0x7f0d00ea + public const int empty_queue = 2131558634; // aapt resource value: 0x7f0d0090 public const int exo_controls_fastforward_description = 2131558544; @@ -7654,11 +7654,14 @@ namespace Opus // aapt resource value: 0x7f0d0085 public const int fab_transformation_sheet_behavior = 2131558533; - // aapt resource value: 0x7f0d00e9 - public const int favorite = 2131558633; + // aapt resource value: 0x7f0d00d8 + public const int fav = 2131558616; - // aapt resource value: 0x7f0d00e7 - public const int featured = 2131558631; + // aapt resource value: 0x7f0d00eb + public const int favorite = 2131558635; + + // aapt resource value: 0x7f0d00e9 + public const int featured = 2131558633; // aapt resource value: 0x7f0d00b6 public const int filter = 2131558582; @@ -7666,14 +7669,14 @@ namespace Opus // aapt resource value: 0x7f0d00b7 public const int filter_hint = 2131558583; - // aapt resource value: 0x7f0d00eb - public const int folders = 2131558635; + // aapt resource value: 0x7f0d00ed + public const int folders = 2131558637; - // aapt resource value: 0x7f0d012e - public const int format_unsupported = 2131558702; + // aapt resource value: 0x7f0d0130 + public const int format_unsupported = 2131558704; - // aapt resource value: 0x7f0d0156 - public const int github = 2131558742; + // aapt resource value: 0x7f0d0158 + public const int github = 2131558744; // aapt resource value: 0x7f0d00d7 public const int goto_channel = 2131558615; @@ -7690,56 +7693,56 @@ namespace Opus // aapt resource value: 0x7f0d00c3 public const int hours = 2131558595; - // aapt resource value: 0x7f0d0131 - public const int initialization = 2131558705; + // aapt resource value: 0x7f0d0133 + public const int initialization = 2131558707; - // aapt resource value: 0x7f0d013d - public const int later = 2131558717; + // aapt resource value: 0x7f0d013f + public const int later = 2131558719; - // aapt resource value: 0x7f0d00d8 - public const int list_songs = 2131558616; + // aapt resource value: 0x7f0d00da + public const int list_songs = 2131558618; - // aapt resource value: 0x7f0d00ee - public const int lives = 2131558638; + // aapt resource value: 0x7f0d00f0 + public const int lives = 2131558640; // aapt resource value: 0x7f0d00c8 public const int loading = 2131558600; - // aapt resource value: 0x7f0d0102 - public const int local_playlist_empty = 2131558658; - - // aapt resource value: 0x7f0d00fd - public const int local_playlists = 2131558653; - // aapt resource value: 0x7f0d0104 - public const int localpl_noperm = 2131558660; + public const int local_playlist_empty = 2131558660; - // aapt resource value: 0x7f0d0151 - public const int log_in = 2131558737; + // aapt resource value: 0x7f0d00ff + public const int local_playlists = 2131558655; - // aapt resource value: 0x7f0d0152 - public const int log_out = 2131558738; - - // aapt resource value: 0x7f0d0150 - public const int logged_in = 2131558736; + // aapt resource value: 0x7f0d0106 + public const int localpl_noperm = 2131558662; // aapt resource value: 0x7f0d0153 - public const int login_disabled = 2131558739; + public const int log_in = 2131558739; - // aapt resource value: 0x7f0d011e - public const int long_loading = 2131558686; + // aapt resource value: 0x7f0d0154 + public const int log_out = 2131558740; - // aapt resource value: 0x7f0d0143 - public const int max_download = 2131558723; + // aapt resource value: 0x7f0d0152 + public const int logged_in = 2131558738; - // aapt resource value: 0x7f0d0144 - public const int max_download_dialog = 2131558724; + // aapt resource value: 0x7f0d0155 + public const int login_disabled = 2131558741; - // aapt resource value: 0x7f0d0132 - public const int metadata = 2131558706; + // aapt resource value: 0x7f0d0120 + public const int long_loading = 2131558688; - // aapt resource value: 0x7f0d012b - public const int metdata_error_noid = 2131558699; + // aapt resource value: 0x7f0d0145 + public const int max_download = 2131558725; + + // aapt resource value: 0x7f0d0146 + public const int max_download_dialog = 2131558726; + + // aapt resource value: 0x7f0d0134 + public const int metadata = 2131558708; + + // aapt resource value: 0x7f0d012d + public const int metdata_error_noid = 2131558701; // aapt resource value: 0x7f0d00c0 public const int minute = 2131558592; @@ -7747,14 +7750,14 @@ namespace Opus // aapt resource value: 0x7f0d00c1 public const int minutes = 2131558593; - // aapt resource value: 0x7f0d00e5 - public const int more = 2131558629; + // aapt resource value: 0x7f0d00e7 + public const int more = 2131558631; - // aapt resource value: 0x7f0d012c - public const int mount_error = 2131558700; + // aapt resource value: 0x7f0d012e + public const int mount_error = 2131558702; - // aapt resource value: 0x7f0d012d - public const int mount_error_action = 2131558701; + // aapt resource value: 0x7f0d012f + public const int mount_error_action = 2131558703; // aapt resource value: 0x7f0d0040 public const int mr_button_content_description = 2131558464; @@ -7831,44 +7834,44 @@ namespace Opus // aapt resource value: 0x7f0d0087 public const int mtrl_chip_close_icon_content_description = 2131558535; - // aapt resource value: 0x7f0d011a - public const int new_playlist = 2131558682; + // aapt resource value: 0x7f0d011c + public const int new_playlist = 2131558684; // aapt resource value: 0x7f0d00bd public const int next_loading = 2131558589; - // aapt resource value: 0x7f0d013f - public const int no = 2131558719; + // aapt resource value: 0x7f0d0141 + public const int no = 2131558721; + + // aapt resource value: 0x7f0d00fc + public const int no_channel = 2131558652; + + // aapt resource value: 0x7f0d00fb + public const int no_lives = 2131558651; + + // aapt resource value: 0x7f0d015a + public const int no_permission = 2131558746; // aapt resource value: 0x7f0d00fa - public const int no_channel = 2131558650; - - // aapt resource value: 0x7f0d00f9 - public const int no_lives = 2131558649; - - // aapt resource value: 0x7f0d0158 - public const int no_permission = 2131558744; + public const int no_playlist = 2131558650; // aapt resource value: 0x7f0d00f8 - public const int no_playlist = 2131558648; + public const int no_result = 2131558648; - // aapt resource value: 0x7f0d00f6 - public const int no_result = 2131558646; + // aapt resource value: 0x7f0d00ee + public const int no_song = 2131558638; - // aapt resource value: 0x7f0d00ec - public const int no_song = 2131558636; + // aapt resource value: 0x7f0d015b + public const int no_song_mix = 2131558747; - // aapt resource value: 0x7f0d0159 - public const int no_song_mix = 2131558745; + // aapt resource value: 0x7f0d00f9 + public const int no_track = 2131558649; - // aapt resource value: 0x7f0d00f7 - public const int no_track = 2131558647; + // aapt resource value: 0x7f0d0151 + public const int not_log = 2131558737; - // aapt resource value: 0x7f0d014f - public const int not_log = 2131558735; - - // aapt resource value: 0x7f0d015e - public const int not_streamable = 2131558750; + // aapt resource value: 0x7f0d0160 + public const int not_streamable = 2131558752; // aapt resource value: 0x7f0d00bc public const int nothing = 2131558588; @@ -7876,17 +7879,17 @@ namespace Opus // aapt resource value: 0x7f0d00bf public const int off = 2131558591; - // aapt resource value: 0x7f0d013b - public const int ok = 2131558715; + // aapt resource value: 0x7f0d013d + public const int ok = 2131558717; // aapt resource value: 0x7f0d00c5 public const int open_youtube = 2131558597; - // aapt resource value: 0x7f0d0154 - public const int opensource = 2131558740; + // aapt resource value: 0x7f0d0156 + public const int opensource = 2131558742; - // aapt resource value: 0x7f0d014c - public const int others = 2131558732; + // aapt resource value: 0x7f0d014e + public const int others = 2131558734; // aapt resource value: 0x7f0d0088 public const int password_toggle_content_description = 2131558536; @@ -7906,14 +7909,14 @@ namespace Opus // aapt resource value: 0x7f0d00c7 public const int paused = 2131558599; - // aapt resource value: 0x7f0d0126 - public const int pick_album_local = 2131558694; + // aapt resource value: 0x7f0d0128 + public const int pick_album_local = 2131558696; // aapt resource value: 0x7f0d00ce public const int play = 2131558606; - // aapt resource value: 0x7f0d00d9 - public const int play_in_order = 2131558617; + // aapt resource value: 0x7f0d00db + public const int play_in_order = 2131558619; // aapt resource value: 0x7f0d00d0 public const int play_last = 2131558608; @@ -7924,65 +7927,65 @@ namespace Opus // aapt resource value: 0x7f0d00c6 public const int playing = 2131558598; - // aapt resource value: 0x7f0d010e - public const int playlist_add_song_not_found = 2131558670; - - // aapt resource value: 0x7f0d010b - public const int playlist_already_saved = 2131558667; - - // aapt resource value: 0x7f0d0107 - public const int playlist_empty = 2131558663; - - // aapt resource value: 0x7f0d0114 - public const int playlist_fork = 2131558676; + // aapt resource value: 0x7f0d0110 + public const int playlist_add_song_not_found = 2131558672; // aapt resource value: 0x7f0d010d - public const int playlist_not_found = 2131558669; + public const int playlist_already_saved = 2131558669; - // aapt resource value: 0x7f0d010a - public const int playlist_saved = 2131558666; - - // aapt resource value: 0x7f0d010c - public const int playlist_unsaved = 2131558668; + // aapt resource value: 0x7f0d0109 + public const int playlist_empty = 2131558665; // aapt resource value: 0x7f0d0116 - public const int playlist_uptodate = 2131558678; + public const int playlist_fork = 2131558678; + + // aapt resource value: 0x7f0d010f + public const int playlist_not_found = 2131558671; + + // aapt resource value: 0x7f0d010c + public const int playlist_saved = 2131558668; + + // aapt resource value: 0x7f0d010e + public const int playlist_unsaved = 2131558670; + + // aapt resource value: 0x7f0d0118 + public const int playlist_uptodate = 2131558680; // aapt resource value: 0x7f0d00b3 public const int playlists = 2131558579; - // aapt resource value: 0x7f0d00e6 - public const int queue = 2131558630; + // aapt resource value: 0x7f0d00e8 + public const int queue = 2131558632; - // aapt resource value: 0x7f0d00da - public const int random_play = 2131558618; + // aapt resource value: 0x7f0d00dc + public const int random_play = 2131558620; - // aapt resource value: 0x7f0d00fc - public const int remove = 2131558652; + // aapt resource value: 0x7f0d00fe + public const int remove = 2131558654; - // aapt resource value: 0x7f0d0108 - public const int remove_from_playlist = 2131558664; + // aapt resource value: 0x7f0d010a + public const int remove_from_playlist = 2131558666; // aapt resource value: 0x7f0d00d5 public const int remove_from_queue = 2131558613; - // aapt resource value: 0x7f0d00fb - public const int remove_search = 2131558651; + // aapt resource value: 0x7f0d00fd + public const int remove_search = 2131558653; // aapt resource value: 0x7f0d00d6 public const int remove_track_from_playlist = 2131558614; - // aapt resource value: 0x7f0d0109 - public const int removed_from_playlist = 2131558665; + // aapt resource value: 0x7f0d010b + public const int removed_from_playlist = 2131558667; // aapt resource value: 0x7f0d00c9 public const int removed_from_queue = 2131558601; - // aapt resource value: 0x7f0d00dc - public const int rename = 2131558620; + // aapt resource value: 0x7f0d00de + public const int rename = 2131558622; - // aapt resource value: 0x7f0d0110 - public const int rename_playlist = 2131558672; + // aapt resource value: 0x7f0d0112 + public const int rename_playlist = 2131558674; // aapt resource value: 0x7f0d00b4 public const int repeat = 2131558580; @@ -7990,17 +7993,17 @@ namespace Opus // aapt resource value: 0x7f0d00ca public const int save_as_playlist = 2131558602; - // aapt resource value: 0x7f0d0119 - public const int save_folder_playlist = 2131558681; + // aapt resource value: 0x7f0d011b + public const int save_folder_playlist = 2131558683; - // aapt resource value: 0x7f0d0118 - public const int save_playlist = 2131558680; + // aapt resource value: 0x7f0d011a + public const int save_playlist = 2131558682; // aapt resource value: 0x7f0d0073 public const int search_menu_title = 2131558515; - // aapt resource value: 0x7f0d00f2 - public const int set_path = 2131558642; + // aapt resource value: 0x7f0d00f4 + public const int set_path = 2131558644; // aapt resource value: 0x7f0d00b9 public const int settings = 2131558585; @@ -8008,95 +8011,98 @@ namespace Opus // aapt resource value: 0x7f0d00ba public const int show_queue = 2131558586; - // aapt resource value: 0x7f0d00e4 - public const int shuffle = 2131558628; + // aapt resource value: 0x7f0d00e6 + public const int shuffle = 2131558630; - // aapt resource value: 0x7f0d00e3 - public const int shuffle_all = 2131558627; + // aapt resource value: 0x7f0d00e5 + public const int shuffle_all = 2131558629; // aapt resource value: 0x7f0d00be public const int sleep_timer = 2131558590; - // aapt resource value: 0x7f0d00ea - public const int songs = 2131558634; + // aapt resource value: 0x7f0d00ec + public const int songs = 2131558636; // aapt resource value: 0x7f0d008d public const int status_bar_notification_info_overflow = 2131558541; - // aapt resource value: 0x7f0d00e0 - public const int stop_sync = 2131558624; + // aapt resource value: 0x7f0d00e2 + public const int stop_sync = 2131558626; - // aapt resource value: 0x7f0d0111 - public const int stop_syncing = 2131558673; + // aapt resource value: 0x7f0d0113 + public const int stop_syncing = 2131558675; // aapt resource value: 0x7f0d003d public const int summary_collapsed_preference_list = 2131558461; - // aapt resource value: 0x7f0d00de - public const int sync = 2131558622; + // aapt resource value: 0x7f0d00e0 + public const int sync = 2131558624; - // aapt resource value: 0x7f0d00df - public const int sync_now = 2131558623; - - // aapt resource value: 0x7f0d0145 - public const int sync_remove = 2131558725; - - // aapt resource value: 0x7f0d00f4 - public const int syncing = 2131558644; - - // aapt resource value: 0x7f0d0168 - public const int tap_details = 2131558760; + // aapt resource value: 0x7f0d00e1 + public const int sync_now = 2131558625; // aapt resource value: 0x7f0d0147 - public const int theme = 2131558727; + public const int sync_remove = 2131558727; - // aapt resource value: 0x7f0d0148 - public const int theme_dialog = 2131558728; + // aapt resource value: 0x7f0d00f6 + public const int syncing = 2131558646; + + // aapt resource value: 0x7f0d016a + public const int tap_details = 2131558762; + + // aapt resource value: 0x7f0d0149 + public const int theme = 2131558729; + + // aapt resource value: 0x7f0d014a + public const int theme_dialog = 2131558730; // aapt resource value: 0x7f0d00c4 public const int timer = 2131558596; - // aapt resource value: 0x7f0d015b - public const int timout = 2131558747; + // aapt resource value: 0x7f0d015d + public const int timout = 2131558749; - // aapt resource value: 0x7f0d0121 - public const int title = 2131558689; + // aapt resource value: 0x7f0d0123 + public const int title = 2131558691; - // aapt resource value: 0x7f0d0157 - public const int undo = 2131558743; + // aapt resource value: 0x7f0d0159 + public const int undo = 2131558745; - // aapt resource value: 0x7f0d0129 - public const int undo_change = 2131558697; + // aapt resource value: 0x7f0d012b + public const int undo_change = 2131558699; - // aapt resource value: 0x7f0d00e2 - public const int unfork = 2131558626; + // aapt resource value: 0x7f0d00d9 + public const int unfav = 2131558617; - // aapt resource value: 0x7f0d0112 - public const int unfork_playlist = 2131558674; + // aapt resource value: 0x7f0d00e4 + public const int unfork = 2131558628; - // aapt resource value: 0x7f0d015c - public const int unknow = 2131558748; + // aapt resource value: 0x7f0d0114 + public const int unfork_playlist = 2131558676; + + // aapt resource value: 0x7f0d015e + public const int unknow = 2131558750; // aapt resource value: 0x7f0d00bb public const int up_next = 2131558587; + // aapt resource value: 0x7f0d0164 + public const int up_to_date = 2131558756; + + // aapt resource value: 0x7f0d0137 + public const int up_to_date_status = 2131558711; + // aapt resource value: 0x7f0d0162 - public const int up_to_date = 2131558754; + public const int update = 2131558754; - // aapt resource value: 0x7f0d0135 - public const int up_to_date_status = 2131558709; - - // aapt resource value: 0x7f0d0160 - public const int update = 2131558752; + // aapt resource value: 0x7f0d0163 + public const int update_message = 2131558755; // aapt resource value: 0x7f0d0161 - public const int update_message = 2131558753; + public const int update_no_internet = 2131558753; - // aapt resource value: 0x7f0d015f - public const int update_no_internet = 2131558751; - - // aapt resource value: 0x7f0d0165 - public const int updating = 2131558757; + // aapt resource value: 0x7f0d0167 + public const int updating = 2131558759; // aapt resource value: 0x7f0d003e public const int v7_preference_off = 2131558462; @@ -8104,44 +8110,44 @@ namespace Opus // aapt resource value: 0x7f0d003f public const int v7_preference_on = 2131558463; - // aapt resource value: 0x7f0d0120 - public const int view_less = 2131558688; + // aapt resource value: 0x7f0d0122 + public const int view_less = 2131558690; - // aapt resource value: 0x7f0d011f - public const int view_more = 2131558687; + // aapt resource value: 0x7f0d0121 + public const int view_more = 2131558689; - // aapt resource value: 0x7f0d0141 - public const int volume = 2131558721; + // aapt resource value: 0x7f0d0143 + public const int volume = 2131558723; - // aapt resource value: 0x7f0d0155 - public const int website = 2131558741; + // aapt resource value: 0x7f0d0157 + public const int website = 2131558743; - // aapt resource value: 0x7f0d0149 - public const int white_theme = 2131558729; + // aapt resource value: 0x7f0d014b + public const int white_theme = 2131558731; - // aapt resource value: 0x7f0d013e - public const int yes = 2131558718; + // aapt resource value: 0x7f0d0140 + public const int yes = 2131558720; - // aapt resource value: 0x7f0d015a - public const int youtube_endpoint = 2131558746; + // aapt resource value: 0x7f0d015c + public const int youtube_endpoint = 2131558748; - // aapt resource value: 0x7f0d0100 - public const int youtube_loading_error = 2131558656; - - // aapt resource value: 0x7f0d0101 - public const int youtube_not_logged = 2131558657; + // aapt resource value: 0x7f0d0102 + public const int youtube_loading_error = 2131558658; // aapt resource value: 0x7f0d0103 - public const int youtube_playlist_empty = 2131558659; + public const int youtube_not_logged = 2131558659; - // aapt resource value: 0x7f0d00fe - public const int youtube_playlists = 2131558654; + // aapt resource value: 0x7f0d0105 + public const int youtube_playlist_empty = 2131558661; + + // aapt resource value: 0x7f0d0100 + public const int youtube_playlists = 2131558656; // aapt resource value: 0x7f0d00b5 public const int youtube_search = 2131558581; - // aapt resource value: 0x7f0d0124 - public const int youtubeid = 2131558692; + // aapt resource value: 0x7f0d0126 + public const int youtubeid = 2131558694; // aapt resource value: 0x7f0d00b0 public const int yt_api_key = 2131558576; diff --git a/Opus/Resources/values-fr/strings.xml b/Opus/Resources/values-fr/strings.xml index cc2effa..ba0903e 100644 --- a/Opus/Resources/values-fr/strings.xml +++ b/Opus/Resources/values-fr/strings.xml @@ -50,6 +50,8 @@ Enlever de la liste de lecture Enlever de la playlist Allez voir la chaine + Ajouter cette musique au favoris + Enlever cette musique des favoris Lister les titres Lire dans l\'ordre diff --git a/Opus/Resources/values/strings.xml b/Opus/Resources/values/strings.xml index d9f8d16..13bdd2c 100644 --- a/Opus/Resources/values/strings.xml +++ b/Opus/Resources/values/strings.xml @@ -50,6 +50,8 @@ Remove from queue Remove track from playlist Open channel tab + Add this song to the favorites + Remove this song to the favorites List songs Play in order