From 6f197c176a73636e06d0193367c75125cb763377 Mon Sep 17 00:00:00 2001
From: Anonymous Raccoon <32224410+AnonymusRaccoon@users.noreply.github.com>
Date: Mon, 19 Feb 2018 20:52:28 +0100
Subject: [PATCH] Download preference recreated
---
MusicApp/MainActivity.cs | 2 +-
MusicApp/MusicApp.csproj | 16 +-
.../Portable Class/DownloadFragment.cs | 214 ++++++++++++++++++
.../Resources/Portable Class/FolderAdapter.cs | 11 +-
.../Resources/Portable Class/Preferences.cs | 212 +++--------------
MusicApp/Resources/Resource.Designer.cs | 161 ++++++-------
.../Resources/layout/PreferenceContent.xml | 20 ++
MusicApp/Resources/layout/Preferences.xml | 3 +-
MusicApp/packages.config | 10 +-
9 files changed, 377 insertions(+), 272 deletions(-)
create mode 100644 MusicApp/Resources/Portable Class/DownloadFragment.cs
create mode 100644 MusicApp/Resources/layout/PreferenceContent.xml
diff --git a/MusicApp/MainActivity.cs b/MusicApp/MainActivity.cs
index b964cb8..8d846d3 100644
--- a/MusicApp/MainActivity.cs
+++ b/MusicApp/MainActivity.cs
@@ -856,7 +856,7 @@ namespace MusicApp
{
Browse.instance?.PopulateList();
Playlist.instance?.PopulateView();
- if (Browse.instance == null && Playlist.instance == null && PreferencesFragment.instance == null)
+ if (Browse.instance == null && Playlist.instance == null && PreferencesFragment.instance == null && Preferences.instance == null)
LocalPlay(sender, new EventArgs());
}
diff --git a/MusicApp/MusicApp.csproj b/MusicApp/MusicApp.csproj
index 1eca778..8704fac 100644
--- a/MusicApp/MusicApp.csproj
+++ b/MusicApp/MusicApp.csproj
@@ -100,22 +100,22 @@
- ..\packages\Newtonsoft.Json.11.0.1-beta3\lib\netstandard2.0\Newtonsoft.Json.dll
+ ..\packages\Newtonsoft.Json.11.0.1\lib\netstandard2.0\Newtonsoft.Json.dll
..\packages\PCLCrypto.2.0.147\lib\MonoAndroid23\PCLCrypto.dll
- ..\packages\PInvoke.BCrypt.0.5.111\lib\portable-net45+win8+wpa81\PInvoke.BCrypt.dll
+ ..\packages\PInvoke.BCrypt.0.5.126\lib\portable-net45+win8+wpa81\PInvoke.BCrypt.dll
- ..\packages\PInvoke.Kernel32.0.5.111\lib\portable-net45+win8+wpa81\PInvoke.Kernel32.dll
+ ..\packages\PInvoke.Kernel32.0.5.126\lib\portable-net45+win8+wpa81\PInvoke.Kernel32.dll
- ..\packages\PInvoke.NCrypt.0.5.111\lib\portable-net45+win8+wpa81\PInvoke.NCrypt.dll
+ ..\packages\PInvoke.NCrypt.0.5.126\lib\portable-net45+win8+wpa81\PInvoke.NCrypt.dll
- ..\packages\PInvoke.Windows.Core.0.5.111\lib\portable-net45+win8+wpa81\PInvoke.Windows.Core.dll
+ ..\packages\PInvoke.Windows.Core.0.5.126\lib\portable-net45+win8+wpa81\PInvoke.Windows.Core.dll
..\packages\Square.OkHttp.2.7.5.0\lib\MonoAndroid\Square.OkHttp.dll
@@ -214,6 +214,7 @@
+
@@ -496,6 +497,11 @@
+
+
+ Designer
+
+
diff --git a/MusicApp/Resources/Portable Class/DownloadFragment.cs b/MusicApp/Resources/Portable Class/DownloadFragment.cs
new file mode 100644
index 0000000..87e55e4
--- /dev/null
+++ b/MusicApp/Resources/Portable Class/DownloadFragment.cs
@@ -0,0 +1,214 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Android.App;
+using Android.Content;
+using Android.OS;
+using Android.Preferences;
+using Android.Runtime;
+using Android.Support.V7.Widget;
+using Android.Support.V7.Widget.Helper;
+using Android.Views;
+using Android.Widget;
+using Java.IO;
+using MusicApp.Resources.values;
+
+namespace MusicApp.Resources.Portable_Class
+{
+ public class DownloadFragment : ListFragment
+ {
+ public static DownloadFragment instance;
+ public string path;
+
+ private List folders;
+ private FolderAdapter adapter;
+
+
+ public override void OnActivityCreated(Bundle savedInstanceState)
+ {
+ base.OnActivityCreated(savedInstanceState);
+ folders = ListFolders();
+ adapter = new FolderAdapter(Application.Context, Resource.Layout.folderList, folders);
+ ListView.FastScrollEnabled = true;
+ ListView.SmoothScrollbarEnabled = true;
+ ListView.Divider = null;
+ ListView.ItemClick += ListView_ItemClick;
+ ListView.DividerHeight = 0;
+ ListAdapter = adapter;
+ }
+
+ public static Fragment NewInstance()
+ {
+ instance = new DownloadFragment { Arguments = new Bundle() };
+ return instance;
+ }
+
+ public override void OnDestroy()
+ {
+ base.OnDestroy();
+ instance = null;
+ }
+
+ public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
+ {
+ View view = base.OnCreateView(inflater, container, savedInstanceState);
+ return view;
+ }
+
+ private void BackNavigation(object sender, Android.Support.V7.Widget.Toolbar.NavigationClickEventArgs e)
+ {
+ throw new NotImplementedException();
+ }
+
+ List ListFolders()
+ {
+ File folderPath = Android.OS.Environment.ExternalStorageDirectory;
+ File[] file = folderPath.ListFiles();
+
+ if (file == null)
+ {
+ System.Console.WriteLine("&file is null");
+ return new List();
+ }
+
+ List folders = new List();
+
+ for (int i = 0; i < file.Length; i++)
+ {
+ if (file[i].IsDirectory)
+ {
+ bool asChild = false;
+ File[] childs = file[i].ListFiles();
+ for (int j = 0; j < childs.Length; j++)
+ {
+ if (!childs[j].IsDirectory)
+ continue;
+
+ asChild = true;
+ break;
+ }
+
+ Folder folder = new Folder(file[i].Name, file[i].Path, asChild);
+ folders.Add(folder);
+ }
+ }
+
+ List folderList = folders.OrderBy(x => x.name).ToList();
+ folders = folderList;
+ return folders;
+ }
+
+ private void ListView_ItemClick(object sender, AdapterView.ItemClickEventArgs e)
+ {
+ Folder folder = folders[e.Position];
+ if (folder.asChild)
+ {
+ if (!folder.isExtended)
+ ExpandFolder(folder);
+ else
+ UnexpandFolder(folder);
+ }
+ else
+ Select(folder, e.View);
+ }
+
+ public void Used_Click(object sender, EventArgs e)
+ {
+ RadioButton radio = (RadioButton)sender;
+ adapter.selectedPosition = (int)radio.GetTag(Resource.Id.folderName);
+ adapter.NotifyDataSetChanged();
+
+ path = (string)radio.GetTag(Resource.Id.folderUsed);
+ }
+
+ private void Select(Folder folder, View view)
+ {
+ path = folder.uri;
+ view.FindViewById(Resource.Id.folderUsed).CallOnClick();
+ }
+
+ private void ExpandFolder(Folder folder)
+ {
+ int index = folders.IndexOf(folder);
+ List childs = ListChilds(folder.uri);
+
+ for (int i = 0; i < childs.Count; i++)
+ {
+ childs[i].Padding = folder.Padding + 30;
+ adapter.Insert(childs[i], index + i + 1);
+ }
+
+ folders.InsertRange(index + 1, childs);
+ folders[index].isExtended = true;
+ folders[index].childCount = childs.Count;
+ adapter.NotifyDataSetChanged();
+
+ if (index < adapter.selectedPosition)
+ adapter.selectedPosition += childs.Count;
+ }
+
+ private void UnexpandFolder(Folder folder)
+ {
+ int index = folders.IndexOf(folder);
+ int count = folder.childCount;
+
+ folders[index].isExtended = false;
+
+ for (int i = 0; i < count + 1; i++)
+ {
+ System.Console.WriteLine("&File name : " + folders[index + i].name);
+
+ if(folders[index + i].isExtended)
+ count += folders[index + i].childCount;
+
+ System.Console.WriteLine("&Count : " + count);
+
+ adapter.Remove(folders[index + i]);
+ }
+
+ if(index < adapter.selectedPosition && adapter.selectedPosition < index + count)
+ {
+ adapter.selectedPosition = -1;
+ path = null;
+ }
+ if (index < adapter.selectedPosition)
+ adapter.selectedPosition -= count;
+
+ folders.RemoveRange(index + 1, count);
+ }
+
+ List ListChilds(string path)
+ {
+ File folderPath = new File(path);
+ File[] files = folderPath.ListFiles();
+ List folders = new List();
+
+ for (int i = 0; i < files.Length; i++)
+ {
+ if (files[i].IsDirectory)
+ {
+ bool asChild = false;
+ File[] childs = files[i].ListFiles();
+
+ for (int j = 0; j < childs.Length; j++)
+ {
+ if (!childs[j].IsDirectory)
+ continue;
+
+ asChild = true;
+ break;
+ }
+
+ Folder folder = new Folder(files[i].Name, files[i].Path, asChild);
+ folders.Add(folder);
+ }
+ }
+
+ List folderList = folders.OrderBy(x => x.name).ToList();
+ folders = folderList;
+ return folders;
+ }
+ }
+}
\ No newline at end of file
diff --git a/MusicApp/Resources/Portable Class/FolderAdapter.cs b/MusicApp/Resources/Portable Class/FolderAdapter.cs
index 983dd2f..94d1a2b 100644
--- a/MusicApp/Resources/Portable Class/FolderAdapter.cs
+++ b/MusicApp/Resources/Portable Class/FolderAdapter.cs
@@ -60,12 +60,17 @@ namespace MusicApp.Resources.Portable_Class
convertView.FindViewById(Resource.Id.folderList).SetPadding(folders[position].Padding, 0, 0, 0);
holder.used.SetTag(Resource.Id.folderUsed, folders[position].uri);
- holder.used.Click += PreferencesFragment.instance.Used_Click;
-
+ holder.used.Click += DownloadFragment.instance.Used_Click;
holder.used.Checked = position == selectedPosition;
holder.used.SetTag(Resource.Id.folderName, position);
- convertView.SetBackgroundColor(Color.White);
+ if(MainActivity.Theme == 1)
+ {
+ holder.Name.SetTextColor(Color.White);
+ holder.expandChild.SetColorFilter(Color.White);
+ //holder.used.ButtonTInt
+ }
+
return convertView;
}
}
diff --git a/MusicApp/Resources/Portable Class/Preferences.cs b/MusicApp/Resources/Portable Class/Preferences.cs
index da4de1d..9aba139 100644
--- a/MusicApp/Resources/Portable Class/Preferences.cs
+++ b/MusicApp/Resources/Portable Class/Preferences.cs
@@ -5,9 +5,6 @@ using Android.OS;
using Android.Preferences;
using Android.Views;
using Android.Widget;
-using Java.IO;
-using MusicApp.Resources.values;
-using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using static Android.Provider.MediaStore.Audio;
@@ -19,6 +16,9 @@ namespace MusicApp.Resources.Portable_Class
[Activity(Label = "Settings", Theme = "@style/Theme")]
public class Preferences : PreferenceActivity
{
+ public static Preferences instance;
+ public Toolbar toolbar;
+
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
@@ -26,30 +26,45 @@ namespace MusicApp.Resources.Portable_Class
if(MainActivity.Theme == 1)
SetTheme(Resource.Style.DarkPreferences);
+ instance = this;
+
FragmentManager.BeginTransaction().Replace(Android.Resource.Id.Content, new PreferencesFragment()).Commit();
}
+ protected override void OnDestroy()
+ {
+ base.OnDestroy();
+ instance = null;
+ }
+
protected override void OnPostCreate(Bundle savedInstanceState)
{
base.OnPostCreate(savedInstanceState);
- LinearLayout root = (LinearLayout) FindViewById(Android.Resource.Id.List).Parent.Parent.Parent;
- Toolbar toolbar = (Toolbar) LayoutInflater.From(this).Inflate(Resource.Layout.PreferenceToolbar, root, false);
+ LinearLayout root = (LinearLayout)FindViewById(Android.Resource.Id.List).Parent.Parent.Parent;
+ toolbar = (Toolbar)LayoutInflater.From(this).Inflate(Resource.Layout.PreferenceToolbar, root, false);
root.AddView(toolbar, 0);
toolbar.Title = "Settings";
- toolbar.NavigationClick += (sender, e) => { Finish(); };
+ toolbar.NavigationClick += (sender, e) =>
+ {
+ if(DownloadFragment.instance == null)
+ Finish();
+ else
+ {
+ ISharedPreferences prefManager = PreferenceManager.GetDefaultSharedPreferences(this);
+ ISharedPreferencesEditor editor = prefManager.Edit();
+ editor.PutString("downloadPath", DownloadFragment.instance.path);
+ editor.Apply();
+ FragmentManager.BeginTransaction().Replace(Android.Resource.Id.ListContainer, new PreferencesFragment()).AddToBackStack(null).Commit();
+ DownloadFragment.instance = null;
+ }
+ };
}
}
public class PreferencesFragment : PreferenceFragment
{
public static PreferencesFragment instance;
-
- //DownloadPath
- private List folders;
- private FolderAdapter adapter;
- private ListView folderList;
- private string path;
- private AlertDialog dialog;
+ private View view;
//Local Shortcut
private int LSposition;
@@ -98,7 +113,7 @@ namespace MusicApp.Resources.Portable_Class
public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
- View view = base.OnCreateView(inflater, container, savedInstanceState);
+ view = base.OnCreateView(inflater, container, savedInstanceState);
view.SetPadding(0, MainActivity.instance.SupportActionBar.Height, 0, 0);
return view;
}
@@ -106,173 +121,8 @@ namespace MusicApp.Resources.Portable_Class
#region Download location
private void DownloadClick(object sender, Preference.PreferenceClickEventArgs e)
{
- folders = ListFolders();
- adapter = new FolderAdapter(Application.Context, Resource.Layout.folderList, folders);
-
- AlertDialog.Builder builder = new AlertDialog.Builder(Activity, MainActivity.dialogTheme);
- builder.SetTitle("Choose download location:");
- builder.SetAdapter(adapter, (senderAlert, args) => { });
- builder.SetPositiveButton("Ok", (senders, args) => { SetDownloadFolder(); });
- builder.SetNegativeButton("Cancel", (s, args) => { return; });
- dialog = builder.Create();
-
- folderList = dialog.ListView;
-
- dialog.ListView.FastScrollEnabled = true;
- dialog.ListView.SmoothScrollbarEnabled = true;
- dialog.ListView.ItemClick += ListView_ItemClick;
- dialog.Show();
- }
-
- private void ListView_ItemClick(object sender, AdapterView.ItemClickEventArgs e)
- {
- Folder folder = folders[e.Position];
- if (folder.asChild)
- {
- if (!folder.isExtended)
- ExpandFolder(folder);
- else
- UnexpandFolder(folder);
- }
- else
- Select(folder);
- }
-
- void ExpandFolder(Folder folder)
- {
- int index = folders.IndexOf(folder) + 1;
- List childs = ListChilds(folder.uri);
- for (int i = 0; i < childs.Count; i++)
- {
- childs[i].Padding = folders[index - 1].Padding;
- childs[i].Padding += 30;
- folders.Insert(index + i, childs[i]);
- adapter.Insert(childs[i], index + i);
- }
-
- if (index - 1 < adapter.selectedPosition)
- adapter.selectedPosition += childs.Count;
- folders[index - 1].isExtended = true;
- folders[index - 1].childCount = childs.Count;
-
- adapter.NotifyDataSetChanged();
- }
-
- void UnexpandFolder(Folder folder)
- {
- int index = folders.IndexOf(folder);
- int count = folders[index].childCount;
- folders[index].isExtended = false;
- for (int i = index + 1; i < index + count; i++)
- {
- adapter.Remove(folders[i]);
- }
-
- if (adapter.selectedPosition != index && adapter.selectedPosition > index - count && adapter.selectedPosition < index + count)
- adapter.selectedPosition = -1;
- else if (adapter.selectedPosition != index)
- adapter.selectedPosition -= count;
-
- folders.RemoveRange(index + 1, count);
- adapter.NotifyDataSetChanged();
-
- dialog.ListView.ScrollBarSize = 10;
- }
-
- void Select(Folder folder)
- {
- path = folder.uri;
- }
-
- public void Used_Click(object sender, EventArgs e)
- {
- RadioButton radio = (RadioButton) sender;
- adapter.selectedPosition = (int)radio.GetTag(Resource.Id.folderName);
- adapter.NotifyDataSetChanged();
-
- path = (string)radio.GetTag(Resource.Id.folderUsed);
- }
-
- void SetDownloadFolder()
- {
- ISharedPreferences pref = PreferenceManager.GetDefaultSharedPreferences(Android.App.Application.Context);
- ISharedPreferencesEditor editor = pref.Edit();
- editor.PutString("downloadPath", path);
- editor.Apply();
-
- Preference prefButton = FindPreference("downloadPath");
- prefButton.Summary = path;
- }
-
- List ListFolders()
- {
- File folderPath = Android.OS.Environment.ExternalStorageDirectory;
-
- File[] file = folderPath.ListFiles();
-
- if (file == null)
- {
- System.Console.WriteLine("&file is null");
- return new List();
- }
-
- List folders = new List();
- for (int i = 0; i < file.Length; i++)
- {
- if (file[i].IsDirectory)
- {
- bool asChild = false;
-
- File[] childs = file[i].ListFiles();
-
- for (int j = 0; i < childs.Length; i++)
- {
- if (childs[j].IsDirectory)
- {
- asChild = true;
- break;
- }
- }
-
- Folder folder = new Folder(file[i].Name, file[i].Path, asChild);
-
- folders.Add(folder);
- }
- }
- return folders;
- }
-
- List ListChilds(string path)
- {
- File folderPath = new File(path);
-
- File[] files = folderPath.ListFiles();
-
- List folders = new List();
-
- for (int i = 0; i < files.Length; i++)
- {
- if (files[i].IsDirectory)
- {
- bool asChild = false;
-
- File[] childs = files[i].ListFiles();
-
- for (int j = 0; j < childs.Length; j++)
- {
- if (childs[j].IsDirectory)
- {
- asChild = true;
- continue;
- }
- }
-
- Folder folder = new Folder(files[i].Name, files[i].Path, asChild);
-
- folders.Add(folder);
- }
- }
- return folders;
+ FragmentManager.BeginTransaction().Replace(Android.Resource.Id.ListContainer, DownloadFragment.NewInstance()).AddToBackStack(null).Commit();
+ instance = null;
}
#endregion
diff --git a/MusicApp/Resources/Resource.Designer.cs b/MusicApp/Resources/Resource.Designer.cs
index fc0f05c..66a65a8 100644
--- a/MusicApp/Resources/Resource.Designer.cs
+++ b/MusicApp/Resources/Resource.Designer.cs
@@ -2814,6 +2814,9 @@ namespace MusicApp
// aapt resource value: 0x7f080046
public const int META = 2131230790;
+ // aapt resource value: 0x7f0800f6
+ public const int PreferenceScreen = 2131230966;
+
// aapt resource value: 0x7f080047
public const int SHIFT = 2131230791;
@@ -2883,8 +2886,8 @@ namespace MusicApp
// aapt resource value: 0x7f08003d
public const int add = 2131230781;
- // aapt resource value: 0x7f080104
- public const int albumArt = 2131230980;
+ // aapt resource value: 0x7f080106
+ public const int albumArt = 2131230982;
// aapt resource value: 0x7f080087
public const int alertTitle = 2131230855;
@@ -2895,8 +2898,8 @@ namespace MusicApp
// aapt resource value: 0x7f080049
public const int always = 2131230793;
- // aapt resource value: 0x7f080106
- public const int artist = 2131230982;
+ // aapt resource value: 0x7f080108
+ public const int artist = 2131230984;
// aapt resource value: 0x7f080067
public const int async = 2131230823;
@@ -2919,8 +2922,8 @@ namespace MusicApp
// aapt resource value: 0x7f0800ca
public const int bottomView = 2131230922;
- // aapt resource value: 0x7f08010e
- public const int browseLayout = 2131230990;
+ // aapt resource value: 0x7f080110
+ public const int browseLayout = 2131230992;
// aapt resource value: 0x7f0800a3
public const int browseList = 2131230883;
@@ -3006,8 +3009,8 @@ namespace MusicApp
// aapt resource value: 0x7f0800ee
public const int downFAB = 2131230958;
- // aapt resource value: 0x7f08010f
- public const int downloadLayout = 2131230991;
+ // aapt resource value: 0x7f080111
+ public const int downloadLayout = 2131230993;
// aapt resource value: 0x7f080095
public const int edit_query = 2131230869;
@@ -3174,8 +3177,8 @@ namespace MusicApp
// aapt resource value: 0x7f080017
public const int line1 = 2131230743;
- // aapt resource value: 0x7f08010a
- public const int line2 = 2131230986;
+ // aapt resource value: 0x7f08010c
+ public const int line2 = 2131230988;
// aapt resource value: 0x7f080018
public const int line3 = 2131230744;
@@ -3189,17 +3192,17 @@ namespace MusicApp
// aapt resource value: 0x7f080078
public const int list_item = 2131230840;
- // aapt resource value: 0x7f0800f6
- public const int localPlay = 2131230966;
+ // aapt resource value: 0x7f0800f8
+ public const int localPlay = 2131230968;
- // aapt resource value: 0x7f08010c
- public const int masked = 2131230988;
+ // aapt resource value: 0x7f08010e
+ public const int masked = 2131230990;
// aapt resource value: 0x7f0800d3
public const int media_actions = 2131230931;
- // aapt resource value: 0x7f080109
- public const int message = 2131230985;
+ // aapt resource value: 0x7f08010b
+ public const int message = 2131230987;
// aapt resource value: 0x7f0800ba
public const int metadataAlbum = 2131230906;
@@ -3228,14 +3231,14 @@ namespace MusicApp
// aapt resource value: 0x7f080064
public const int mini = 2131230820;
- // aapt resource value: 0x7f080108
- public const int moreButton = 2131230984;
+ // aapt resource value: 0x7f08010a
+ public const int moreButton = 2131230986;
// aapt resource value: 0x7f080038
public const int multiply = 2131230776;
- // aapt resource value: 0x7f08010d
- public const int musicLayout = 2131230989;
+ // aapt resource value: 0x7f08010f
+ public const int musicLayout = 2131230991;
// aapt resource value: 0x7f0800ad
public const int navigation_header_container = 2131230893;
@@ -3315,32 +3318,35 @@ namespace MusicApp
// aapt resource value: 0x7f0800e7
public const int playerTitle = 2131230951;
- // aapt resource value: 0x7f080110
- public const int playlistLayout = 2131230992;
+ // aapt resource value: 0x7f080112
+ public const int playlistLayout = 2131230994;
// aapt resource value: 0x7f0800a4
public const int playlistName = 2131230884;
+ // aapt resource value: 0x7f0800f5
+ public const int preferenceContent = 2131230965;
+
// aapt resource value: 0x7f080006
public const int progress_circular = 2131230726;
// aapt resource value: 0x7f080007
public const int progress_horizontal = 2131230727;
- // aapt resource value: 0x7f0800f8
- public const int quickPlay = 2131230968;
+ // aapt resource value: 0x7f0800fa
+ public const int quickPlay = 2131230970;
- // aapt resource value: 0x7f0800f5
- public const int quickPlayLinear = 2131230965;
+ // aapt resource value: 0x7f0800f7
+ public const int quickPlayLinear = 2131230967;
// aapt resource value: 0x7f08008c
public const int radio = 2131230860;
- // aapt resource value: 0x7f0800f9
- public const int recycler = 2131230969;
+ // aapt resource value: 0x7f0800fb
+ public const int recycler = 2131230971;
- // aapt resource value: 0x7f080103
- public const int reorder = 2131230979;
+ // aapt resource value: 0x7f080105
+ public const int reorder = 2131230981;
// aapt resource value: 0x7f08005b
public const int right = 2131230811;
@@ -3378,8 +3384,8 @@ namespace MusicApp
// aapt resource value: 0x7f080066
public const int scrollable = 2131230822;
- // aapt resource value: 0x7f0800fa
- public const int search = 2131230970;
+ // aapt resource value: 0x7f0800fc
+ public const int search = 2131230972;
// aapt resource value: 0x7f080097
public const int search_badge = 2131230871;
@@ -3420,8 +3426,8 @@ namespace MusicApp
// aapt resource value: 0x7f0800a1
public const int select_dialog_listview = 2131230881;
- // aapt resource value: 0x7f080111
- public const int settings = 2131230993;
+ // aapt resource value: 0x7f080113
+ public const int settings = 2131230995;
// aapt resource value: 0x7f08008b
public const int shortcut = 2131230859;
@@ -3456,29 +3462,29 @@ namespace MusicApp
// aapt resource value: 0x7f0800ed
public const int songTimer = 2131230957;
- // aapt resource value: 0x7f0800fc
- public const int spArt = 2131230972;
-
// aapt resource value: 0x7f0800fe
- public const int spArtist = 2131230974;
-
- // aapt resource value: 0x7f0800fb
- public const int spContainer = 2131230971;
-
- // aapt resource value: 0x7f080101
- public const int spLast = 2131230977;
-
- // aapt resource value: 0x7f0800ff
- public const int spNext = 2131230975;
+ public const int spArt = 2131230974;
// aapt resource value: 0x7f080100
- public const int spPlay = 2131230976;
-
- // aapt resource value: 0x7f080102
- public const int spProgress = 2131230978;
+ public const int spArtist = 2131230976;
// aapt resource value: 0x7f0800fd
- public const int spTitle = 2131230973;
+ public const int spContainer = 2131230973;
+
+ // aapt resource value: 0x7f080103
+ public const int spLast = 2131230979;
+
+ // aapt resource value: 0x7f080101
+ public const int spNext = 2131230977;
+
+ // aapt resource value: 0x7f080102
+ public const int spPlay = 2131230978;
+
+ // aapt resource value: 0x7f080104
+ public const int spProgress = 2131230980;
+
+ // aapt resource value: 0x7f0800ff
+ public const int spTitle = 2131230975;
// aapt resource value: 0x7f08007b
public const int spacer = 2131230843;
@@ -3531,8 +3537,8 @@ namespace MusicApp
// aapt resource value: 0x7f08001a
public const int text2 = 2131230746;
- // aapt resource value: 0x7f080105
- public const int textLayout = 2131230981;
+ // aapt resource value: 0x7f080107
+ public const int textLayout = 2131230983;
// aapt resource value: 0x7f080081
public const int textSpacerNoButtons = 2131230849;
@@ -3603,8 +3609,8 @@ namespace MusicApp
// aapt resource value: 0x7f080016
public const int view_offset_helper = 2131230742;
- // aapt resource value: 0x7f08010b
- public const int visible = 2131230987;
+ // aapt resource value: 0x7f08010d
+ public const int visible = 2131230989;
// aapt resource value: 0x7f0800a2
public const int webview = 2131230882;
@@ -3615,11 +3621,11 @@ namespace MusicApp
// aapt resource value: 0x7f08003f
public const int wrap_content = 2131230783;
- // aapt resource value: 0x7f080107
- public const int youtubeIcon = 2131230983;
+ // aapt resource value: 0x7f080109
+ public const int youtubeIcon = 2131230985;
- // aapt resource value: 0x7f0800f7
- public const int ytPlay = 2131230967;
+ // aapt resource value: 0x7f0800f9
+ public const int ytPlay = 2131230969;
// aapt resource value: 0x7f0800c4
public const int ytProgress = 2131230916;
@@ -3933,52 +3939,55 @@ namespace MusicApp
public const int preference_widget_switch_compat = 2130903123;
// aapt resource value: 0x7f030054
- public const int Preferences = 2130903124;
+ public const int PreferenceContent = 2130903124;
// aapt resource value: 0x7f030055
- public const int PreferenceToolbar = 2130903125;
+ public const int Preferences = 2130903125;
// aapt resource value: 0x7f030056
- public const int QuickPlayLayout = 2130903126;
+ public const int PreferenceToolbar = 2130903126;
// aapt resource value: 0x7f030057
- public const int RecyclerFragment = 2130903127;
+ public const int QuickPlayLayout = 2130903127;
// aapt resource value: 0x7f030058
- public const int search_layout = 2130903128;
+ public const int RecyclerFragment = 2130903128;
// aapt resource value: 0x7f030059
- public const int select_dialog_item_material = 2130903129;
+ public const int search_layout = 2130903129;
// aapt resource value: 0x7f03005a
- public const int select_dialog_multichoice_material = 2130903130;
+ public const int select_dialog_item_material = 2130903130;
// aapt resource value: 0x7f03005b
- public const int select_dialog_singlechoice_material = 2130903131;
+ public const int select_dialog_multichoice_material = 2130903131;
// aapt resource value: 0x7f03005c
- public const int SmallPlayer = 2130903132;
+ public const int select_dialog_singlechoice_material = 2130903132;
// aapt resource value: 0x7f03005d
- public const int SongList = 2130903133;
+ public const int SmallPlayer = 2130903133;
// aapt resource value: 0x7f03005e
- public const int support_simple_spinner_dropdown_item = 2130903134;
+ public const int SongList = 2130903134;
// aapt resource value: 0x7f03005f
- public const int tabs = 2130903135;
+ public const int support_simple_spinner_dropdown_item = 2130903135;
// aapt resource value: 0x7f030060
- public const int TimerLayout = 2130903136;
+ public const int tabs = 2130903136;
// aapt resource value: 0x7f030061
- public const int tooltip = 2130903137;
+ public const int TimerLayout = 2130903137;
// aapt resource value: 0x7f030062
- public const int TwoLineLayout = 2130903138;
+ public const int tooltip = 2130903138;
// aapt resource value: 0x7f030063
- public const int YtList = 2130903139;
+ public const int TwoLineLayout = 2130903139;
+
+ // aapt resource value: 0x7f030064
+ public const int YtList = 2130903140;
static Layout()
{
diff --git a/MusicApp/Resources/layout/PreferenceContent.xml b/MusicApp/Resources/layout/PreferenceContent.xml
new file mode 100644
index 0000000..31def1a
--- /dev/null
+++ b/MusicApp/Resources/layout/PreferenceContent.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/MusicApp/Resources/layout/Preferences.xml b/MusicApp/Resources/layout/Preferences.xml
index e04234a..7bf4eb7 100644
--- a/MusicApp/Resources/layout/Preferences.xml
+++ b/MusicApp/Resources/layout/Preferences.xml
@@ -1,5 +1,6 @@
-
+
-
+
-
-
-
-
+
+
+
+