diff --git a/Opus/Opus.csproj b/Opus/Opus.csproj index ef7cc64..c945a09 100644 --- a/Opus/Opus.csproj +++ b/Opus/Opus.csproj @@ -609,9 +609,6 @@ - - - diff --git a/Opus/Resources/Portable Class/Home.cs b/Opus/Resources/Portable Class/Home.cs index fc75a51..ba64a17 100644 --- a/Opus/Resources/Portable Class/Home.cs +++ b/Opus/Resources/Portable Class/Home.cs @@ -373,46 +373,6 @@ namespace Opus.Resources.Portable_Class } } - public async Task AddHomeTopics() - { - List channelLits = new List(); - - string nextPageToken = ""; - while (nextPageToken != null) - { - try - { - YouTubeService youtube = YoutubeEngine.youtubeService; - SubscriptionsResource.ListRequest request = youtube.Subscriptions.List("snippet,contentDetails"); - request.ChannelId = "UCRPb0XKQwDoHbgvtawH-gGw"; - request.MaxResults = 50; - request.PageToken = nextPageToken; - - SubscriptionListResponse response = await request.ExecuteAsync(); - - foreach (var item in response.Items) - { - Song channel = new Song(item.Snippet.Title.Substring(0, item.Snippet.Title.IndexOf(" - Topic")), item.Snippet.Description, item.Snippet.Thumbnails.Default__.Url, item.Snippet.ResourceId.ChannelId, -1, -1, null, true); - channelLits.Add(channel); - } - - nextPageToken = response.NextPageToken; - } - catch(Exception ex) - { - Console.WriteLine("&ERROR FOUND (on home topics load) " + ex.Message); - return; - } - } - - Random r = new Random(); - List channels = channelLits.OrderBy(x => r.Next()).ToList(); - channels.RemoveAll(x => selectedTopics.Contains(x.Title)); - - HomeSection TopicSelector = new HomeSection(Resources.GetString(Resource.String.music_genres), SectionType.TopicSelector, channels); - adapter.AddToList(new List { TopicSelector }); - } - public void AddQueue() { if (adapterItems[0].SectionTitle != "Queue") diff --git a/Opus/Resources/Portable Class/HomeAdapter.cs b/Opus/Resources/Portable Class/HomeAdapter.cs index bf70ffd..f28db87 100644 --- a/Opus/Resources/Portable Class/HomeAdapter.cs +++ b/Opus/Resources/Portable Class/HomeAdapter.cs @@ -63,11 +63,6 @@ namespace Opus.Resources.Portable_Class // View itemView = LayoutInflater.From(parent.Context).Inflate(Resource.Layout.HomePlaylists, parent, false); // return new LineSongHolder(itemView, OnClick, OnLongClick); //} - else if(viewType == 3) - { - View itemView = LayoutInflater.From(parent.Context).Inflate(Resource.Layout.HomeTopic, parent, false); - return new LineSongHolder(itemView, OnClick, OnLongClick); - } else { View itemView = LayoutInflater.From(parent.Context).Inflate(Resource.Layout.ShuffleButton, parent, false); @@ -213,8 +208,6 @@ namespace Opus.Resources.Portable_Class return 1; else if (items[position].contentType == SectionType.PlaylistList) return 2; - else if (items[position].contentType == SectionType.TopicSelector) - return 3; else return 4; } diff --git a/Opus/Resources/Portable Class/MusicPlayer.cs b/Opus/Resources/Portable Class/MusicPlayer.cs index 538c97a..7c8cd64 100644 --- a/Opus/Resources/Portable Class/MusicPlayer.cs +++ b/Opus/Resources/Portable Class/MusicPlayer.cs @@ -53,8 +53,9 @@ namespace Opus.Resources.Portable_Class public static List queue = new List(); public static List WaitForIndex = new List(); public static List autoPlay = new List(); - public MediaSessionCompat mediaSession; - public AudioManager audioManager; + private MediaSessionCompat mediaSession; + private AudioManager audioManager; + private AudioFocusRequestClass audioFocusRequest; public NotificationManager notificationManager; private bool noisyRegistered; public static bool isRunning = false; @@ -110,14 +111,14 @@ namespace Opus.Resources.Portable_Class case "Pause": if(isRunning) - Pause(true); + Pause(); else Resume(); break; case "ForcePause": if (isRunning) - Pause(true); + Pause(); break; case "ForceResume": @@ -296,13 +297,13 @@ namespace Opus.Resources.Portable_Class if (Build.VERSION.SdkInt >= BuildVersionCodes.O) { - AudioFocusRequestClass focusRequest = new AudioFocusRequestClass.Builder(AudioFocus.Gain) + audioFocusRequest = new AudioFocusRequestClass.Builder(AudioFocus.Gain) .SetAudioAttributes(attributes) .SetAcceptsDelayedFocusGain(true) .SetWillPauseWhenDucked(true) .SetOnAudioFocusChangeListener(this) .Build(); - AudioFocusRequest audioFocus = audioManager.RequestAudioFocus(focusRequest); + AudioFocusRequest audioFocus = audioManager.RequestAudioFocus(audioFocusRequest); if (audioFocus != AudioFocusRequest.Granted) { @@ -400,13 +401,13 @@ namespace Opus.Resources.Portable_Class if (Build.VERSION.SdkInt >= BuildVersionCodes.O) { - AudioFocusRequestClass focusRequest = new AudioFocusRequestClass.Builder(AudioFocus.Gain) + audioFocusRequest = new AudioFocusRequestClass.Builder(AudioFocus.Gain) .SetAudioAttributes(attributes) .SetAcceptsDelayedFocusGain(true) .SetWillPauseWhenDucked(true) .SetOnAudioFocusChangeListener(this) .Build(); - AudioFocusRequest audioFocus = audioManager.RequestAudioFocus(focusRequest); + AudioFocusRequest audioFocus = audioManager.RequestAudioFocus(audioFocusRequest); if (audioFocus != AudioFocusRequest.Granted) { @@ -430,15 +431,15 @@ namespace Opus.Resources.Portable_Class #pragma warning restore CS0618 } - if (progress != -1) + player.PlayWhenReady = true; + player.Prepare(mediaSource, true, true); + CreateNotification(song.Title, song.Artist, song.AlbumArt, song.Album); + + if (progress != -1) //I'm seeking after the prepare because with some format, exoplayer's prepare reset the position { player.SeekTo(progress); MainActivity.instance?.FindViewById(Resource.Id.playButton).SetImageResource(Resource.Drawable.Pause); } - - player.PlayWhenReady = true; - player.Prepare(mediaSource, true, true); - CreateNotification(song.Title, song.Artist, song.AlbumArt, song.Album); } else { @@ -1018,7 +1019,7 @@ namespace Opus.Resources.Portable_Class } else { - Pause(true); + Pause(); return; } } @@ -1034,12 +1035,6 @@ namespace Opus.Resources.Portable_Class { Song song = await GetItem(position); - if (player == null) - InitializeService(); - - if (currentID == position && StartFromOldPosition) - player.SeekTo(LastTimer); - currentID = position; if(showPlayer) MainActivity.instance.ShowPlayer(); @@ -1067,7 +1062,7 @@ namespace Opus.Resources.Portable_Class } } else - Play(song, -1, false); + Play(song, StartFromOldPosition ? LastTimer : -1, false); Queue.instance?.RefreshAP(); } @@ -1335,14 +1330,12 @@ namespace Opus.Resources.Portable_Class StartForeground(notificationID, notification); } - public void Pause(bool userRequested) + public void Pause() { - if (userRequested) - ShouldResumePlayback = false; + ShouldResumePlayback = false; if (!UseCastPlayer && player != null && isRunning) { - SaveTimer(CurrentPosition); isRunning = false; Intent tmpPauseIntent = new Intent(Application.Context, typeof(MusicPlayer)); @@ -1579,6 +1572,7 @@ namespace Opus.Resources.Portable_Class if (SaveQueue) { + Console.WriteLine("&Saving the queue"); ISharedPreferences pref = PreferenceManager.GetDefaultSharedPreferences(Application.Context); ISharedPreferencesEditor editor = pref.Edit(); editor.PutInt("currentID", currentID); @@ -1606,6 +1600,12 @@ namespace Opus.Resources.Portable_Class } } + if (Build.VERSION.SdkInt >= BuildVersionCodes.O) + audioManager.AbandonAudioFocusRequest(audioFocusRequest); + else +#pragma warning disable CS0618 // Type or member is obsolete + audioManager.AbandonAudioFocus(this); +#pragma warning restore CS0618 // Type or member is obsolete MainActivity.instance.SkipStop = false; noisyReceiver = null; @@ -1628,6 +1628,8 @@ namespace Opus.Resources.Portable_Class RemotePlayer.Stop(); StopSelf(); } + + Player.instance?.Ready(); //Refresh play/pause state } private void SleepPause() @@ -1656,12 +1658,11 @@ namespace Opus.Resources.Portable_Class break; case AudioFocus.Loss: - Pause(false); - ShouldResumePlayback = false; + Pause(); break; case AudioFocus.LossTransient: - Pause(false); + Pause(); ShouldResumePlayback = true; break; diff --git a/Opus/Resources/Portable Class/Player.cs b/Opus/Resources/Portable Class/Player.cs index 53f6bb5..423ff69 100644 --- a/Opus/Resources/Portable Class/Player.cs +++ b/Opus/Resources/Portable Class/Player.cs @@ -440,6 +440,8 @@ namespace Opus void Sleep(int time) { + time = 1; //This is for test + Intent intent = new Intent(MainActivity.instance, typeof(Sleeper)); intent.PutExtra("time", time); MainActivity.instance.StartService(intent); diff --git a/Opus/Resources/Resource.Designer.cs b/Opus/Resources/Resource.Designer.cs index cbaf184..2dc3ea1 100644 --- a/Opus/Resources/Resource.Designer.cs +++ b/Opus/Resources/Resource.Designer.cs @@ -6729,265 +6729,262 @@ namespace Opus public const int HomePlaylists = 2130903113; // aapt resource value: 0x7f03004a - public const int HomeTopic = 2130903114; + public const int LineSong = 2130903114; // aapt resource value: 0x7f03004b - public const int LineSong = 2130903115; + public const int LineSongs = 2130903115; // aapt resource value: 0x7f03004c - public const int LineSongs = 2130903116; + public const int LogOutButton = 2130903116; // aapt resource value: 0x7f03004d - public const int LogOutButton = 2130903117; + public const int Main = 2130903117; // aapt resource value: 0x7f03004e - public const int Main = 2130903118; + public const int mr_cast_dialog = 2130903118; // aapt resource value: 0x7f03004f - public const int mr_cast_dialog = 2130903119; + public const int mr_cast_group_item = 2130903119; // aapt resource value: 0x7f030050 - public const int mr_cast_group_item = 2130903120; + public const int mr_cast_group_volume_item = 2130903120; // aapt resource value: 0x7f030051 - public const int mr_cast_group_volume_item = 2130903121; + public const int mr_cast_media_metadata = 2130903121; // aapt resource value: 0x7f030052 - public const int mr_cast_media_metadata = 2130903122; + public const int mr_cast_route_item = 2130903122; // aapt resource value: 0x7f030053 - public const int mr_cast_route_item = 2130903123; + public const int mr_chooser_dialog = 2130903123; // aapt resource value: 0x7f030054 - public const int mr_chooser_dialog = 2130903124; + public const int mr_chooser_list_item = 2130903124; // aapt resource value: 0x7f030055 - public const int mr_chooser_list_item = 2130903125; + public const int mr_controller_material_dialog_b = 2130903125; // aapt resource value: 0x7f030056 - public const int mr_controller_material_dialog_b = 2130903126; + public const int mr_controller_volume_item = 2130903126; // aapt resource value: 0x7f030057 - public const int mr_controller_volume_item = 2130903127; + public const int mr_dialog_header_item = 2130903127; // aapt resource value: 0x7f030058 - public const int mr_dialog_header_item = 2130903128; + public const int mr_picker_dialog = 2130903128; // aapt resource value: 0x7f030059 - public const int mr_picker_dialog = 2130903129; + public const int mr_picker_route_item = 2130903129; // aapt resource value: 0x7f03005a - public const int mr_picker_route_item = 2130903130; + public const int mr_playback_control = 2130903130; // aapt resource value: 0x7f03005b - public const int mr_playback_control = 2130903131; + public const int mr_volume_control = 2130903131; // aapt resource value: 0x7f03005c - public const int mr_volume_control = 2130903132; + public const int mtrl_layout_snackbar = 2130903132; // aapt resource value: 0x7f03005d - public const int mtrl_layout_snackbar = 2130903133; + public const int mtrl_layout_snackbar_include = 2130903133; // aapt resource value: 0x7f03005e - public const int mtrl_layout_snackbar_include = 2130903134; + public const int MusicLayout = 2130903134; // aapt resource value: 0x7f03005f - public const int MusicLayout = 2130903135; + public const int NoSong = 2130903135; // aapt resource value: 0x7f030060 - public const int NoSong = 2130903136; + public const int notification_action = 2130903136; // aapt resource value: 0x7f030061 - public const int notification_action = 2130903137; + public const int notification_action_tombstone = 2130903137; // aapt resource value: 0x7f030062 - public const int notification_action_tombstone = 2130903138; + public const int notification_media_action = 2130903138; // aapt resource value: 0x7f030063 - public const int notification_media_action = 2130903139; + public const int notification_media_cancel_action = 2130903139; // aapt resource value: 0x7f030064 - public const int notification_media_cancel_action = 2130903140; + public const int notification_template_big_media = 2130903140; // aapt resource value: 0x7f030065 - public const int notification_template_big_media = 2130903141; + public const int notification_template_big_media_custom = 2130903141; // aapt resource value: 0x7f030066 - public const int notification_template_big_media_custom = 2130903142; + public const int notification_template_big_media_narrow = 2130903142; // aapt resource value: 0x7f030067 - public const int notification_template_big_media_narrow = 2130903143; + public const int notification_template_big_media_narrow_custom = 2130903143; // aapt resource value: 0x7f030068 - public const int notification_template_big_media_narrow_custom = 2130903144; + public const int notification_template_custom_big = 2130903144; // aapt resource value: 0x7f030069 - public const int notification_template_custom_big = 2130903145; + public const int notification_template_icon_group = 2130903145; // aapt resource value: 0x7f03006a - public const int notification_template_icon_group = 2130903146; + public const int notification_template_lines_media = 2130903146; // aapt resource value: 0x7f03006b - public const int notification_template_lines_media = 2130903147; + public const int notification_template_media = 2130903147; // aapt resource value: 0x7f03006c - public const int notification_template_media = 2130903148; + public const int notification_template_media_custom = 2130903148; // aapt resource value: 0x7f03006d - public const int notification_template_media_custom = 2130903149; + public const int notification_template_part_chronometer = 2130903149; // aapt resource value: 0x7f03006e - public const int notification_template_part_chronometer = 2130903150; + public const int notification_template_part_time = 2130903150; // aapt resource value: 0x7f03006f - public const int notification_template_part_time = 2130903151; + public const int NoYtPlaylist = 2130903151; // aapt resource value: 0x7f030070 - public const int NoYtPlaylist = 2130903152; + public const int NumberPicker = 2130903152; // aapt resource value: 0x7f030071 - public const int NumberPicker = 2130903153; + public const int player = 2130903153; // aapt resource value: 0x7f030072 - public const int player = 2130903154; + public const int playerInfo = 2130903154; // aapt resource value: 0x7f030073 - public const int playerInfo = 2130903155; + public const int PlaylistHeader = 2130903155; // aapt resource value: 0x7f030074 - public const int PlaylistHeader = 2130903156; + public const int PlaylistItem = 2130903156; // aapt resource value: 0x7f030075 - public const int PlaylistItem = 2130903157; + public const int PlaylistList = 2130903157; // aapt resource value: 0x7f030076 - public const int PlaylistList = 2130903158; + public const int PlaylistSmallHeader = 2130903158; // aapt resource value: 0x7f030077 - public const int PlaylistSmallHeader = 2130903159; + public const int preference = 2130903159; // aapt resource value: 0x7f030078 - public const int preference = 2130903160; + public const int preference_category = 2130903160; // aapt resource value: 0x7f030079 - public const int preference_category = 2130903161; + public const int preference_category_material = 2130903161; // aapt resource value: 0x7f03007a - public const int preference_category_material = 2130903162; + public const int preference_dialog_edittext = 2130903162; // aapt resource value: 0x7f03007b - public const int preference_dialog_edittext = 2130903163; + public const int preference_dropdown = 2130903163; // aapt resource value: 0x7f03007c - public const int preference_dropdown = 2130903164; + public const int preference_dropdown_material = 2130903164; // aapt resource value: 0x7f03007d - public const int preference_dropdown_material = 2130903165; + public const int preference_information = 2130903165; // aapt resource value: 0x7f03007e - public const int preference_information = 2130903166; + public const int preference_information_material = 2130903166; // aapt resource value: 0x7f03007f - public const int preference_information_material = 2130903167; + public const int preference_list_fragment = 2130903167; // aapt resource value: 0x7f030080 - public const int preference_list_fragment = 2130903168; + public const int preference_material = 2130903168; // aapt resource value: 0x7f030081 - public const int preference_material = 2130903169; + public const int preference_recyclerview = 2130903169; // aapt resource value: 0x7f030082 - public const int preference_recyclerview = 2130903170; + public const int preference_widget_checkbox = 2130903170; // aapt resource value: 0x7f030083 - public const int preference_widget_checkbox = 2130903171; + public const int preference_widget_seekbar = 2130903171; // aapt resource value: 0x7f030084 - public const int preference_widget_seekbar = 2130903172; + public const int preference_widget_seekbar_material = 2130903172; // aapt resource value: 0x7f030085 - public const int preference_widget_seekbar_material = 2130903173; + public const int preference_widget_switch = 2130903173; // aapt resource value: 0x7f030086 - public const int preference_widget_switch = 2130903174; + public const int preference_widget_switch_compat = 2130903174; // aapt resource value: 0x7f030087 - public const int preference_widget_switch_compat = 2130903175; + public const int PreferenceCategory = 2130903175; // aapt resource value: 0x7f030088 - public const int PreferenceCategory = 2130903176; + public const int PreferenceRoot = 2130903176; // aapt resource value: 0x7f030089 - public const int PreferenceRoot = 2130903177; + public const int Preferences = 2130903177; // aapt resource value: 0x7f03008a - public const int Preferences = 2130903178; + public const int QueueCurrent = 2130903178; // aapt resource value: 0x7f03008b - public const int QueueCurrent = 2130903179; + public const int QueueFooter = 2130903179; // aapt resource value: 0x7f03008c - public const int QueueFooter = 2130903180; + public const int QueueHeader = 2130903180; // aapt resource value: 0x7f03008d - public const int QueueHeader = 2130903181; + public const int RecyclerFragment = 2130903181; // aapt resource value: 0x7f03008e - public const int RecyclerFragment = 2130903182; + public const int SaveAPlaylist = 2130903182; // aapt resource value: 0x7f03008f - public const int SaveAPlaylist = 2130903183; + public const int search_layout = 2130903183; // aapt resource value: 0x7f030090 - public const int search_layout = 2130903184; + public const int SearchLayout = 2130903184; // aapt resource value: 0x7f030091 - public const int SearchLayout = 2130903185; + public const int SeekbarPreference = 2130903185; // aapt resource value: 0x7f030092 - public const int SeekbarPreference = 2130903186; + public const int select_dialog_item_material = 2130903186; // aapt resource value: 0x7f030093 - public const int select_dialog_item_material = 2130903187; + public const int select_dialog_multichoice_material = 2130903187; // aapt resource value: 0x7f030094 - public const int select_dialog_multichoice_material = 2130903188; + public const int select_dialog_singlechoice_material = 2130903188; // aapt resource value: 0x7f030095 - public const int select_dialog_singlechoice_material = 2130903189; + public const int ShuffleButton = 2130903189; // aapt resource value: 0x7f030096 - public const int ShuffleButton = 2130903190; + public const int SmallEmptyView = 2130903190; // aapt resource value: 0x7f030097 - public const int SmallEmptyView = 2130903191; + public const int smallLoading = 2130903191; // aapt resource value: 0x7f030098 - public const int smallLoading = 2130903192; + public const int SongList = 2130903192; // aapt resource value: 0x7f030099 - public const int SongList = 2130903193; + public const int SuggestionLayout = 2130903193; // aapt resource value: 0x7f03009a - public const int SuggestionLayout = 2130903194; + public const int support_simple_spinner_dropdown_item = 2130903194; // aapt resource value: 0x7f03009b - public const int support_simple_spinner_dropdown_item = 2130903195; + public const int tabs = 2130903195; // aapt resource value: 0x7f03009c - public const int tabs = 2130903196; + public const int TimerLayout = 2130903196; // aapt resource value: 0x7f03009d - public const int TimerLayout = 2130903197; + public const int TwoLineLayout = 2130903197; // aapt resource value: 0x7f03009e - public const int TwoLineLayout = 2130903198; + public const int ViewPager = 2130903198; // aapt resource value: 0x7f03009f - public const int ViewPager = 2130903199; - - // aapt resource value: 0x7f0300a0 - public const int YtList = 2130903200; + public const int YtList = 2130903199; static Layout() { @@ -7174,14 +7171,14 @@ namespace Opus // aapt resource value: 0x7f0d0072 public const int abc_toolbar_collapse_description = 2131558514; - // aapt resource value: 0x7f0d012c - public const int add = 2131558700; + // aapt resource value: 0x7f0d012a + public const int add = 2131558698; - // aapt resource value: 0x7f0d00fd - public const int add_playlist = 2131558653; + // aapt resource value: 0x7f0d00fb + public const int add_playlist = 2131558651; - // aapt resource value: 0x7f0d010d - public const int add_playlist_msg = 2131558669; + // aapt resource value: 0x7f0d010b + public const int add_playlist_msg = 2131558667; // aapt resource value: 0x7f0d00df public const int add_to_library = 2131558623; @@ -7192,23 +7189,23 @@ namespace Opus // aapt resource value: 0x7f0d00d9 public const int add_to_queue = 2131558617; - // aapt resource value: 0x7f0d0117 - public const int album = 2131558679; + // aapt resource value: 0x7f0d0115 + public const int album = 2131558677; - // aapt resource value: 0x7f0d00eb - public const int all = 2131558635; + // aapt resource value: 0x7f0d00e9 + public const int all = 2131558633; // aapt resource value: 0x7f0d0080 public const int appbar_scrolling_view_behavior = 2131558528; - // aapt resource value: 0x7f0d0136 - public const int appearances = 2131558710; + // aapt resource value: 0x7f0d0134 + public const int appearances = 2131558708; - // aapt resource value: 0x7f0d0129 - public const int apply = 2131558697; + // aapt resource value: 0x7f0d0127 + public const int apply = 2131558695; - // aapt resource value: 0x7f0d0116 - public const int artist = 2131558678; + // aapt resource value: 0x7f0d0114 + public const int artist = 2131558676; // aapt resource value: 0x7f0d00ca public const int autoplay = 2131558602; @@ -7216,11 +7213,11 @@ namespace Opus // aapt resource value: 0x7f0d00cb public const int autoplay_desc = 2131558603; - // aapt resource value: 0x7f0d0130 - public const int behavior = 2131558704; + // aapt resource value: 0x7f0d012e + public const int behavior = 2131558702; - // aapt resource value: 0x7f0d014e - public const int beta_available = 2131558734; + // aapt resource value: 0x7f0d014c + public const int beta_available = 2131558732; // aapt resource value: 0x7f0d0081 public const int bottom_sheet_behavior = 2131558529; @@ -7228,17 +7225,17 @@ namespace Opus // aapt resource value: 0x7f0d00b3 public const int browse = 2131558579; - // aapt resource value: 0x7f0d012a - public const int cancel = 2131558698; + // aapt resource value: 0x7f0d0128 + public const int cancel = 2131558696; - // aapt resource value: 0x7f0d0154 - public const int cancelling = 2131558740; + // aapt resource value: 0x7f0d0152 + public const int cancelling = 2131558738; - // aapt resource value: 0x7f0d00f3 - public const int cant_delete = 2131558643; + // aapt resource value: 0x7f0d00f1 + public const int cant_delete = 2131558641; - // aapt resource value: 0x7f0d0151 - public const int cant_play_non_youtube = 2131558737; + // aapt resource value: 0x7f0d014f + public const int cant_play_non_youtube = 2131558735; // aapt resource value: 0x7f0d00b8 public const int cast = 2131558584; @@ -7321,11 +7318,11 @@ namespace Opus // aapt resource value: 0x7f0d0015 public const int cast_play = 2131558421; - // aapt resource value: 0x7f0d0127 - public const int cast_queue_push = 2131558695; + // aapt resource value: 0x7f0d0125 + public const int cast_queue_push = 2131558693; - // aapt resource value: 0x7f0d0128 - public const int cast_queue_pushed = 2131558696; + // aapt resource value: 0x7f0d0126 + public const int cast_queue_pushed = 2131558694; // aapt resource value: 0x7f0d0016 public const int cast_rewind = 2131558422; @@ -7375,14 +7372,14 @@ namespace Opus // aapt resource value: 0x7f0d0025 public const int cast_unmute = 2131558437; - // aapt resource value: 0x7f0d0119 - public const int change_albumart = 2131558681; + // aapt resource value: 0x7f0d0117 + public const int change_albumart = 2131558679; - // aapt resource value: 0x7f0d011e - public const int changes_saved = 2131558686; + // aapt resource value: 0x7f0d011c + public const int changes_saved = 2131558684; - // aapt resource value: 0x7f0d00ed - public const int channels = 2131558637; + // aapt resource value: 0x7f0d00eb + public const int channels = 2131558635; // aapt resource value: 0x7f0d0082 public const int character_counter_content_description = 2131558530; @@ -7390,8 +7387,8 @@ namespace Opus // aapt resource value: 0x7f0d0083 public const int character_counter_pattern = 2131558531; - // aapt resource value: 0x7f0d013c - public const int check_updates = 2131558716; + // aapt resource value: 0x7f0d013a + public const int check_updates = 2131558714; // aapt resource value: 0x7f0d00b0 public const int clientID = 2131558576; @@ -7453,14 +7450,14 @@ namespace Opus // aapt resource value: 0x7f0d003b public const int common_signin_button_text_long = 2131558459; - // aapt resource value: 0x7f0d0126 - public const int completed = 2131558694; + // aapt resource value: 0x7f0d0124 + public const int completed = 2131558692; - // aapt resource value: 0x7f0d0148 - public const int country_blocked = 2131558728; + // aapt resource value: 0x7f0d0146 + public const int country_blocked = 2131558726; - // aapt resource value: 0x7f0d0112 - public const int create_local = 2131558674; + // aapt resource value: 0x7f0d0110 + public const int create_local = 2131558672; // aapt resource value: 0x7f0d00cc public const int create_mix = 2131558604; @@ -7468,68 +7465,68 @@ namespace Opus // aapt resource value: 0x7f0d00d0 public const int create_mix_from_song = 2131558608; - // aapt resource value: 0x7f0d010e - public const int create_playlist = 2131558670; + // aapt resource value: 0x7f0d010c + public const int create_playlist = 2131558668; - // aapt resource value: 0x7f0d0114 - public const int create_synced = 2131558676; + // aapt resource value: 0x7f0d0112 + public const int create_synced = 2131558674; - // aapt resource value: 0x7f0d0113 - public const int create_youtube = 2131558675; + // aapt resource value: 0x7f0d0111 + public const int create_youtube = 2131558673; - // aapt resource value: 0x7f0d013a - public const int dark_theme = 2131558714; + // aapt resource value: 0x7f0d0138 + public const int dark_theme = 2131558712; // aapt resource value: 0x7f0d00db public const int delete = 2131558619; - // aapt resource value: 0x7f0d0109 - public const int delete_playlist = 2131558665; + // aapt resource value: 0x7f0d0107 + public const int delete_playlist = 2131558663; - // aapt resource value: 0x7f0d0121 - public const int deleted_file = 2131558689; + // aapt resource value: 0x7f0d011f + public const int deleted_file = 2131558687; // aapt resource value: 0x7f0d00d3 public const int download = 2131558611; - // aapt resource value: 0x7f0d011b - public const int download_albumart = 2131558683; + // aapt resource value: 0x7f0d0119 + public const int download_albumart = 2131558681; - // aapt resource value: 0x7f0d0132 - public const int download_directory = 2131558706; + // aapt resource value: 0x7f0d0130 + public const int download_directory = 2131558704; - // aapt resource value: 0x7f0d011c - public const int download_meta = 2131558684; + // aapt resource value: 0x7f0d011a + public const int download_meta = 2131558682; + + // aapt resource value: 0x7f0d00ed + public const int download_path_error = 2131558637; + + // aapt resource value: 0x7f0d00ec + public const int download_path_not_set = 2131558636; + + // aapt resource value: 0x7f0d011e + public const int download_queue = 2131558686; // aapt resource value: 0x7f0d00ef - public const int download_path_error = 2131558639; + public const int downloading = 2131558639; - // aapt resource value: 0x7f0d00ee - public const int download_path_not_set = 2131558638; + // aapt resource value: 0x7f0d0150 + public const int downloading_notification = 2131558736; - // aapt resource value: 0x7f0d0120 - public const int download_queue = 2131558688; + // aapt resource value: 0x7f0d0122 + public const int downloading_status = 2131558690; - // aapt resource value: 0x7f0d00f1 - public const int downloading = 2131558641; - - // aapt resource value: 0x7f0d0152 - public const int downloading_notification = 2131558738; - - // aapt resource value: 0x7f0d0124 - public const int downloading_status = 2131558692; - - // aapt resource value: 0x7f0d014f - public const int downloading_update = 2131558735; + // aapt resource value: 0x7f0d014d + public const int downloading_update = 2131558733; // aapt resource value: 0x7f0d00d2 public const int edit_metadata = 2131558610; - // aapt resource value: 0x7f0d0101 - public const int element = 2131558657; + // aapt resource value: 0x7f0d00ff + public const int element = 2131558655; - // aapt resource value: 0x7f0d0102 - public const int elements = 2131558658; + // aapt resource value: 0x7f0d0100 + public const int elements = 2131558656; // aapt resource value: 0x7f0d0090 public const int exo_controls_fastforward_description = 2131558544; @@ -7642,8 +7639,8 @@ namespace Opus // aapt resource value: 0x7f0d00b7 public const int filter = 2131558583; - // aapt resource value: 0x7f0d00e9 - public const int folders = 2131558633; + // aapt resource value: 0x7f0d00e7 + public const int folders = 2131558631; // aapt resource value: 0x7f0d0086 public const int hide_bottom_view_on_scroll_behavior = 2131558534; @@ -7657,44 +7654,44 @@ namespace Opus // aapt resource value: 0x7f0d00c3 public const int hours = 2131558595; - // aapt resource value: 0x7f0d0122 - public const int initialization = 2131558690; + // aapt resource value: 0x7f0d0120 + public const int initialization = 2131558688; - // aapt resource value: 0x7f0d012d - public const int later = 2131558701; + // aapt resource value: 0x7f0d012b + public const int later = 2131558699; // aapt resource value: 0x7f0d00d6 public const int list_songs = 2131558614; - // aapt resource value: 0x7f0d00ec - public const int lives = 2131558636; + // aapt resource value: 0x7f0d00ea + public const int lives = 2131558634; - // aapt resource value: 0x7f0d00ff - public const int local_playlist_empty = 2131558655; + // aapt resource value: 0x7f0d00fd + public const int local_playlist_empty = 2131558653; - // aapt resource value: 0x7f0d00fb - public const int local_playlists = 2131558651; + // aapt resource value: 0x7f0d00f9 + public const int local_playlists = 2131558649; - // aapt resource value: 0x7f0d0140 - public const int log_in = 2131558720; - - // aapt resource value: 0x7f0d0141 - public const int log_out = 2131558721; + // aapt resource value: 0x7f0d013e + public const int log_in = 2131558718; // aapt resource value: 0x7f0d013f - public const int logged_in = 2131558719; + public const int log_out = 2131558719; - // aapt resource value: 0x7f0d0133 - public const int max_download = 2131558707; + // aapt resource value: 0x7f0d013d + public const int logged_in = 2131558717; - // aapt resource value: 0x7f0d0134 - public const int max_download_dialog = 2131558708; + // aapt resource value: 0x7f0d0131 + public const int max_download = 2131558705; - // aapt resource value: 0x7f0d0123 - public const int metadata = 2131558691; + // aapt resource value: 0x7f0d0132 + public const int max_download_dialog = 2131558706; - // aapt resource value: 0x7f0d011f - public const int metdata_error_noid = 2131558687; + // aapt resource value: 0x7f0d0121 + public const int metadata = 2131558689; + + // aapt resource value: 0x7f0d011d + public const int metdata_error_noid = 2131558685; // aapt resource value: 0x7f0d00c0 public const int minute = 2131558592; @@ -7780,47 +7777,44 @@ namespace Opus // aapt resource value: 0x7f0d0087 public const int mtrl_chip_close_icon_content_description = 2131558535; - // aapt resource value: 0x7f0d00e6 - public const int music_genres = 2131558630; - - // aapt resource value: 0x7f0d0111 - public const int new_playlist = 2131558673; + // aapt resource value: 0x7f0d010f + public const int new_playlist = 2131558671; // aapt resource value: 0x7f0d00bd public const int next_loading = 2131558589; - // aapt resource value: 0x7f0d012f - public const int no = 2131558703; - - // aapt resource value: 0x7f0d00f8 - public const int no_channel = 2131558648; - - // aapt resource value: 0x7f0d00f7 - public const int no_lives = 2131558647; - - // aapt resource value: 0x7f0d0143 - public const int no_permission = 2131558723; + // aapt resource value: 0x7f0d012d + public const int no = 2131558701; // aapt resource value: 0x7f0d00f6 - public const int no_playlist = 2131558646; - - // aapt resource value: 0x7f0d00f4 - public const int no_result = 2131558644; - - // aapt resource value: 0x7f0d00ea - public const int no_song = 2131558634; - - // aapt resource value: 0x7f0d0144 - public const int no_song_mix = 2131558724; + public const int no_channel = 2131558646; // aapt resource value: 0x7f0d00f5 - public const int no_track = 2131558645; + public const int no_lives = 2131558645; - // aapt resource value: 0x7f0d013e - public const int not_log = 2131558718; + // aapt resource value: 0x7f0d0141 + public const int no_permission = 2131558721; - // aapt resource value: 0x7f0d0149 - public const int not_streamable = 2131558729; + // aapt resource value: 0x7f0d00f4 + public const int no_playlist = 2131558644; + + // aapt resource value: 0x7f0d00f2 + public const int no_result = 2131558642; + + // aapt resource value: 0x7f0d00e8 + public const int no_song = 2131558632; + + // aapt resource value: 0x7f0d0142 + public const int no_song_mix = 2131558722; + + // aapt resource value: 0x7f0d00f3 + public const int no_track = 2131558643; + + // aapt resource value: 0x7f0d013c + public const int not_log = 2131558716; + + // aapt resource value: 0x7f0d0147 + public const int not_streamable = 2131558727; // aapt resource value: 0x7f0d00bc public const int nothing = 2131558588; @@ -7828,14 +7822,14 @@ namespace Opus // aapt resource value: 0x7f0d00bf public const int off = 2131558591; - // aapt resource value: 0x7f0d012b - public const int ok = 2131558699; + // aapt resource value: 0x7f0d0129 + public const int ok = 2131558697; // aapt resource value: 0x7f0d00c5 public const int open_youtube = 2131558597; - // aapt resource value: 0x7f0d013b - public const int others = 2131558715; + // aapt resource value: 0x7f0d0139 + public const int others = 2131558713; // aapt resource value: 0x7f0d0088 public const int password_toggle_content_description = 2131558536; @@ -7855,8 +7849,8 @@ namespace Opus // aapt resource value: 0x7f0d00c7 public const int paused = 2131558599; - // aapt resource value: 0x7f0d011a - public const int pick_album_local = 2131558682; + // aapt resource value: 0x7f0d0118 + public const int pick_album_local = 2131558680; // aapt resource value: 0x7f0d00cd public const int play = 2131558605; @@ -7873,17 +7867,17 @@ namespace Opus // aapt resource value: 0x7f0d00c6 public const int playing = 2131558598; - // aapt resource value: 0x7f0d0108 - public const int playlist_add_song_not_found = 2131558664; - // aapt resource value: 0x7f0d0106 - public const int playlist_already_saved = 2131558662; + public const int playlist_add_song_not_found = 2131558662; - // aapt resource value: 0x7f0d0103 - public const int playlist_empty = 2131558659; + // aapt resource value: 0x7f0d0104 + public const int playlist_already_saved = 2131558660; - // aapt resource value: 0x7f0d0107 - public const int playlist_not_found = 2131558663; + // aapt resource value: 0x7f0d0101 + public const int playlist_empty = 2131558657; + + // aapt resource value: 0x7f0d0105 + public const int playlist_not_found = 2131558661; // aapt resource value: 0x7f0d00b4 public const int playlists = 2131558580; @@ -7894,26 +7888,23 @@ namespace Opus // aapt resource value: 0x7f0d00d8 public const int random_play = 2131558616; - // aapt resource value: 0x7f0d00e7 - public const int recommendation_explanation = 2131558631; + // aapt resource value: 0x7f0d00f8 + public const int remove = 2131558648; - // aapt resource value: 0x7f0d00fa - public const int remove = 2131558650; - - // aapt resource value: 0x7f0d0104 - public const int remove_from_playlist = 2131558660; + // aapt resource value: 0x7f0d0102 + public const int remove_from_playlist = 2131558658; // aapt resource value: 0x7f0d00d4 public const int remove_from_queue = 2131558612; - // aapt resource value: 0x7f0d00f9 - public const int remove_search = 2131558649; + // aapt resource value: 0x7f0d00f7 + public const int remove_search = 2131558647; // aapt resource value: 0x7f0d00d5 public const int remove_track_from_playlist = 2131558613; - // aapt resource value: 0x7f0d0105 - public const int removed_from_playlist = 2131558661; + // aapt resource value: 0x7f0d0103 + public const int removed_from_playlist = 2131558659; // aapt resource value: 0x7f0d00c8 public const int removed_from_queue = 2131558600; @@ -7921,8 +7912,8 @@ namespace Opus // aapt resource value: 0x7f0d00da public const int rename = 2131558618; - // aapt resource value: 0x7f0d010a - public const int rename_playlist = 2131558666; + // aapt resource value: 0x7f0d0108 + public const int rename_playlist = 2131558664; // aapt resource value: 0x7f0d00b5 public const int repeat = 2131558581; @@ -7930,17 +7921,17 @@ namespace Opus // aapt resource value: 0x7f0d00c9 public const int save_as_playlist = 2131558601; - // aapt resource value: 0x7f0d0110 - public const int save_folder_playlist = 2131558672; + // aapt resource value: 0x7f0d010e + public const int save_folder_playlist = 2131558670; - // aapt resource value: 0x7f0d010f - public const int save_playlist = 2131558671; + // aapt resource value: 0x7f0d010d + public const int save_playlist = 2131558669; // aapt resource value: 0x7f0d0073 public const int search_menu_title = 2131558515; - // aapt resource value: 0x7f0d00f0 - public const int set_path = 2131558640; + // aapt resource value: 0x7f0d00ee + public const int set_path = 2131558638; // aapt resource value: 0x7f0d00b9 public const int settings = 2131558585; @@ -7957,8 +7948,8 @@ namespace Opus // aapt resource value: 0x7f0d00be public const int sleep_timer = 2131558590; - // aapt resource value: 0x7f0d00e8 - public const int songs = 2131558632; + // aapt resource value: 0x7f0d00e6 + public const int songs = 2131558630; // aapt resource value: 0x7f0d008d public const int status_bar_notification_info_overflow = 2131558541; @@ -7966,8 +7957,8 @@ namespace Opus // aapt resource value: 0x7f0d00de public const int stop_sync = 2131558622; - // aapt resource value: 0x7f0d010b - public const int stop_syncing = 2131558667; + // aapt resource value: 0x7f0d0109 + public const int stop_syncing = 2131558665; // aapt resource value: 0x7f0d003d public const int summary_collapsed_preference_list = 2131558461; @@ -7978,65 +7969,65 @@ namespace Opus // aapt resource value: 0x7f0d00dd public const int sync_now = 2131558621; + // aapt resource value: 0x7f0d0133 + public const int sync_remove = 2131558707; + + // aapt resource value: 0x7f0d00f0 + public const int syncing = 2131558640; + + // aapt resource value: 0x7f0d0151 + public const int tap_details = 2131558737; + // aapt resource value: 0x7f0d0135 - public const int sync_remove = 2131558709; + public const int theme = 2131558709; - // aapt resource value: 0x7f0d00f2 - public const int syncing = 2131558642; - - // aapt resource value: 0x7f0d0153 - public const int tap_details = 2131558739; - - // aapt resource value: 0x7f0d0137 - public const int theme = 2131558711; - - // aapt resource value: 0x7f0d0138 - public const int theme_dialog = 2131558712; + // aapt resource value: 0x7f0d0136 + public const int theme_dialog = 2131558710; // aapt resource value: 0x7f0d00c4 public const int timer = 2131558596; - // aapt resource value: 0x7f0d0146 - public const int timout = 2131558726; + // aapt resource value: 0x7f0d0144 + public const int timout = 2131558724; - // aapt resource value: 0x7f0d0115 - public const int title = 2131558677; + // aapt resource value: 0x7f0d0113 + public const int title = 2131558675; - // aapt resource value: 0x7f0d0142 - public const int undo = 2131558722; + // aapt resource value: 0x7f0d0140 + public const int undo = 2131558720; - // aapt resource value: 0x7f0d011d - public const int undo_change = 2131558685; + // aapt resource value: 0x7f0d011b + public const int undo_change = 2131558683; // aapt resource value: 0x7f0d00e0 public const int unfork = 2131558624; - // aapt resource value: 0x7f0d010c - public const int unfork_playlist = 2131558668; + // aapt resource value: 0x7f0d010a + public const int unfork_playlist = 2131558666; - // aapt resource value: 0x7f0d0147 - public const int unknow = 2131558727; + // aapt resource value: 0x7f0d0145 + public const int unknow = 2131558725; // aapt resource value: 0x7f0d00bb public const int up_next = 2131558587; - // aapt resource value: 0x7f0d014d - public const int up_to_date = 2131558733; - - // aapt resource value: 0x7f0d0125 - public const int up_to_date_status = 2131558693; - // aapt resource value: 0x7f0d014b - public const int update = 2131558731; + public const int up_to_date = 2131558731; - // aapt resource value: 0x7f0d014c - public const int update_message = 2131558732; + // aapt resource value: 0x7f0d0123 + public const int up_to_date_status = 2131558691; + + // aapt resource value: 0x7f0d0149 + public const int update = 2131558729; // aapt resource value: 0x7f0d014a - public const int update_no_internet = 2131558730; + public const int update_message = 2131558730; - // aapt resource value: 0x7f0d0150 - public const int updating = 2131558736; + // aapt resource value: 0x7f0d0148 + public const int update_no_internet = 2131558728; + + // aapt resource value: 0x7f0d014e + public const int updating = 2131558734; // aapt resource value: 0x7f0d003e public const int v7_preference_off = 2131558462; @@ -8044,35 +8035,35 @@ namespace Opus // aapt resource value: 0x7f0d003f public const int v7_preference_on = 2131558463; - // aapt resource value: 0x7f0d013d - public const int version = 2131558717; + // aapt resource value: 0x7f0d013b + public const int version = 2131558715; - // aapt resource value: 0x7f0d0131 - public const int volume = 2131558705; + // aapt resource value: 0x7f0d012f + public const int volume = 2131558703; - // aapt resource value: 0x7f0d0139 - public const int white_theme = 2131558713; + // aapt resource value: 0x7f0d0137 + public const int white_theme = 2131558711; - // aapt resource value: 0x7f0d012e - public const int yes = 2131558702; + // aapt resource value: 0x7f0d012c + public const int yes = 2131558700; - // aapt resource value: 0x7f0d0145 - public const int youtube_endpoint = 2131558725; - - // aapt resource value: 0x7f0d00fe - public const int youtube_loading_error = 2131558654; - - // aapt resource value: 0x7f0d0100 - public const int youtube_playlist_empty = 2131558656; + // aapt resource value: 0x7f0d0143 + public const int youtube_endpoint = 2131558723; // aapt resource value: 0x7f0d00fc - public const int youtube_playlists = 2131558652; + public const int youtube_loading_error = 2131558652; + + // aapt resource value: 0x7f0d00fe + public const int youtube_playlist_empty = 2131558654; + + // aapt resource value: 0x7f0d00fa + public const int youtube_playlists = 2131558650; // aapt resource value: 0x7f0d00b6 public const int youtube_search = 2131558582; - // aapt resource value: 0x7f0d0118 - public const int youtubeid = 2131558680; + // aapt resource value: 0x7f0d0116 + public const int youtubeid = 2131558678; static String() { diff --git a/Opus/Resources/layout/HomeTopic.xml b/Opus/Resources/layout/HomeTopic.xml deleted file mode 100644 index 7f0d396..0000000 --- a/Opus/Resources/layout/HomeTopic.xml +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - - -