files, View emptyView, OnClickListener listener, int selectionColor) {
this.files = files;
this.emptyView = emptyView;
this.listener = listener;
+ this.selectionColor = selectionColor;
isInSelectMode = false;
selectedItems = new ArrayList<>();
isInMoveMode = false;
@@ -65,7 +68,7 @@ public void onBindViewHolder(@NonNull final ViewHolder holder, int position) {
if (isInSelectMode) {
if (selectedItems.contains(item)) {
- holder.view.setBackgroundColor(holder.view.getResources().getColor(R.color.colorPrimaryLight));
+ holder.view.setBackgroundColor(selectionColor);
} else {
holder.view.setBackgroundColor(holder.view.getResources().getColor(R.color.white));
}
@@ -228,7 +231,7 @@ private void onLongClickAction(FileItem item, ViewHolder holder) {
} else {
selectedItems.add(item);
isInSelectMode = true;
- holder.view.setBackgroundColor(holder.view.getResources().getColor(R.color.colorPrimaryLight));
+ holder.view.setBackgroundColor(selectionColor);
listener.onFilesSelected(true);
}
}
diff --git a/app/src/main/java/ca/pkay/rcloneexplorer/SettingsActivity.java b/app/src/main/java/ca/pkay/rcloneexplorer/SettingsActivity.java
new file mode 100644
index 0000000..8a3cfac
--- /dev/null
+++ b/app/src/main/java/ca/pkay/rcloneexplorer/SettingsActivity.java
@@ -0,0 +1,190 @@
+package ca.pkay.rcloneexplorer;
+
+import android.annotation.TargetApi;
+import android.content.Context;
+import android.content.Intent;
+import android.content.res.Configuration;
+import android.os.Build;
+import android.os.Bundle;
+import android.preference.Preference;
+import android.preference.PreferenceActivity;
+import android.support.annotation.Nullable;
+import android.support.v7.app.ActionBar;
+import android.preference.PreferenceFragment;
+import android.preference.PreferenceManager;
+import android.view.MenuItem;
+import android.widget.Toast;
+
+import java.util.List;
+
+import es.dmoral.toasty.Toasty;
+
+/**
+ * A {@link PreferenceActivity} that presents a set of application settings. On
+ * handset devices, settings are presented as a single list. On tablets,
+ * settings are split by category, with category headers shown to the left of
+ * the list of settings.
+ *
+ * See
+ * Android Design: Settings for design guidelines and the Settings
+ * API Guide for more information on developing a Settings UI.
+ */
+public class SettingsActivity extends AppCompatPreferenceActivity {
+
+ /**
+ * A preference value change listener that updates the preference's summary
+ * to reflect its new value.
+ */
+ private static Preference.OnPreferenceChangeListener sBindPreferenceSummaryToValueListener = new Preference.OnPreferenceChangeListener() {
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object value) {
+ String stringValue = value.toString();
+ preference.setSummary(stringValue);
+ return true;
+ }
+ };
+
+ /**
+ * Helper method to determine if the device has an extra-large screen. For
+ * example, 10" tablets are extra-large.
+ */
+ private static boolean isXLargeTablet(Context context) {
+ return (context.getResources().getConfiguration().screenLayout
+ & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_XLARGE;
+ }
+
+ /**
+ * Binds a preference's summary to its value. More specifically, when the
+ * preference's value is changed, its summary (line of text below the
+ * preference title) is updated to reflect the value. The summary is also
+ * immediately updated upon calling this method. The exact display format is
+ * dependent on the type of preference.
+ *
+ * @see #sBindPreferenceSummaryToValueListener
+ */
+ private static void bindPreferenceSummaryToValue(Preference preference) {
+ // Set the listener to watch for value changes.
+ preference.setOnPreferenceChangeListener(sBindPreferenceSummaryToValueListener);
+
+ // Trigger the listener immediately with the preference's
+ // current value.
+ sBindPreferenceSummaryToValueListener.onPreferenceChange(preference,
+ PreferenceManager
+ .getDefaultSharedPreferences(preference.getContext())
+ .getString(preference.getKey(), ""));
+ }
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setupActionBar();
+ }
+
+ /**
+ * Set up the {@link android.app.ActionBar}, if the API is available.
+ */
+ private void setupActionBar() {
+ ActionBar actionBar = getSupportActionBar();
+ if (actionBar != null) {
+ // Show the Up button in the action bar.
+ actionBar.setDisplayHomeAsUpEnabled(true);
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean onIsMultiPane() {
+ return isXLargeTablet(this);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ @TargetApi(Build.VERSION_CODES.HONEYCOMB)
+ public void onBuildHeaders(List target) {
+ loadHeadersFromResource(R.xml.pref_headers, target);
+ }
+
+ /**
+ * This method stops fragment injection in malicious applications.
+ * Make sure to deny any unknown fragments here.
+ */
+ protected boolean isValidFragment(String fragmentName) {
+ return PreferenceFragment.class.getName().equals(fragmentName)
+ || GeneralPreferenceFragment.class.getName().equals(fragmentName)
+ || LookAndFeelFragment.class.getName().equals(fragmentName);
+ }
+
+ public static class LookAndFeelFragment extends PreferenceFragment {
+ @Override
+ public void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ addPreferencesFromResource(R.xml.pref_look_and_feel);
+ setHasOptionsMenu(true);
+ setListener();
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ int id = item.getItemId();
+ if (id == android.R.id.home) {
+ startActivity(new Intent(getActivity(), SettingsActivity.class));
+ return true;
+ }
+ return super.onOptionsItemSelected(item);
+ }
+
+ private void setListener() {
+ final Context context = getActivity();
+
+ findPreference("pref_key_color_primary").setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ Toasty.info(context, context.getString(R.string.restart_required), Toast.LENGTH_LONG, true).show();
+ return true;
+ }
+ });
+ findPreference("pref_key_color_accent").setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ Toasty.info(context, context.getString(R.string.restart_required), Toast.LENGTH_LONG, true).show();
+ return true;
+ }
+ });
+ }
+ }
+
+ /**
+ * This fragment shows general preferences only. It is used when the
+ * activity is showing a two-pane settings UI.
+ */
+ @TargetApi(Build.VERSION_CODES.HONEYCOMB)
+ public static class GeneralPreferenceFragment extends PreferenceFragment {
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ addPreferencesFromResource(R.xml.pref_general);
+ setHasOptionsMenu(true);
+
+ // Bind the summaries of EditText/List/Dialog/Ringtone preferences
+ // to their values. When their values change, their summaries are
+ // updated to reflect the new value, per the Android Design
+ // guidelines.
+ bindPreferenceSummaryToValue(findPreference("pref_key_stream_max"));
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ int id = item.getItemId();
+ if (id == android.R.id.home) {
+ startActivity(new Intent(getActivity(), SettingsActivity.class));
+ return true;
+ }
+ return super.onOptionsItemSelected(item);
+ }
+ }
+}
diff --git a/app/src/main/res/drawable/ic_look_and_feel.xml b/app/src/main/res/drawable/ic_look_and_feel.xml
new file mode 100644
index 0000000..f75e2fb
--- /dev/null
+++ b/app/src/main/res/drawable/ic_look_and_feel.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_settings.xml b/app/src/main/res/drawable/ic_settings.xml
new file mode 100644
index 0000000..ace746c
--- /dev/null
+++ b/app/src/main/res/drawable/ic_settings.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/layout/about_icon_item.xml b/app/src/main/res/layout/about_icon_item.xml
new file mode 100644
index 0000000..e78eb17
--- /dev/null
+++ b/app/src/main/res/layout/about_icon_item.xml
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/about_libraries_item.xml b/app/src/main/res/layout/about_libraries_item.xml
new file mode 100644
index 0000000..ff1f424
--- /dev/null
+++ b/app/src/main/res/layout/about_libraries_item.xml
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_about_libs.xml b/app/src/main/res/layout/activity_about_libs.xml
new file mode 100644
index 0000000..ab16747
--- /dev/null
+++ b/app/src/main/res/layout/activity_about_libs.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/content_about.xml b/app/src/main/res/layout/content_about.xml
index 3f7082d..45a58fe 100644
--- a/app/src/main/res/layout/content_about.xml
+++ b/app/src/main/res/layout/content_about.xml
@@ -53,11 +53,13 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_version"
+ android:textColor="@color/colorPrimaryText"
android:textStyle="bold"/>
+ android:layout_height="wrap_content"
+ android:textColor="@color/colorSecondaryText" />
@@ -85,11 +87,13 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/rclone_version"
+ android:textColor="@color/colorPrimaryText"
android:textStyle="bold"/>
+ android:layout_height="wrap_content"
+ android:textColor="@color/colorSecondaryText" />
@@ -132,6 +136,7 @@
android:paddingStart="32dp"
android:paddingEnd="0dp"
android:text="@string/changelog"
+ android:textColor="@color/colorPrimaryText"
android:textStyle="bold"/>
@@ -158,6 +163,7 @@
android:paddingStart="32dp"
android:paddingEnd="0dp"
android:text="@string/credits_libraries"
+ android:textColor="@color/colorPrimaryText"
android:textStyle="bold"/>
@@ -183,6 +189,7 @@
android:layout_height="wrap_content"
android:text="@string/star_on_github"
android:textStyle="bold"
+ android:textColor="@color/colorPrimaryText"
android:paddingStart="32dp"
android:paddingEnd="0dp"/>
@@ -210,6 +217,7 @@
android:paddingStart="32dp"
android:paddingEnd="0dp"
android:text="@string/report_a_bug"
+ android:textColor="@color/colorPrimaryText"
android:textStyle="bold"/>
@@ -253,6 +261,7 @@
android:layout_height="wrap_content"
android:text="@string/author_name"
android:textStyle="bold"
+ android:textColor="@color/colorPrimaryText"
android:paddingStart="32dp"
android:paddingEnd="0dp"/>
@@ -278,6 +287,7 @@
android:layout_height="wrap_content"
android:text="@string/follow_on_github"
android:textStyle="bold"
+ android:textColor="@color/colorPrimaryText"
android:paddingStart="32dp"
android:paddingEnd="0dp"/>
diff --git a/app/src/main/res/layout/content_about_libs.xml b/app/src/main/res/layout/content_about_libs.xml
new file mode 100644
index 0000000..2b15e51
--- /dev/null
+++ b/app/src/main/res/layout/content_about_libs.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/dialog_file_properties.xml b/app/src/main/res/layout/dialog_file_properties.xml
index b02c703..781cee8 100644
--- a/app/src/main/res/layout/dialog_file_properties.xml
+++ b/app/src/main/res/layout/dialog_file_properties.xml
@@ -11,30 +11,37 @@
@@ -42,6 +49,8 @@
android:id="@+id/file_size"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+ android:textColor="@color/colorSecondaryText"
+ android:textIsSelectable="true"
tools:text="12 MB"/>
@@ -62,12 +71,14 @@
@@ -79,6 +90,7 @@
@@ -86,6 +98,7 @@
android:id="@+id/file_sha1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+ android:textColor="@color/colorSecondaryText"
android:text="@string/tap_to_calculate"/>
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_file_explorer_item.xml b/app/src/main/res/layout/fragment_file_explorer_item.xml
index bd880f0..a18919c 100644
--- a/app/src/main/res/layout/fragment_file_explorer_item.xml
+++ b/app/src/main/res/layout/fragment_file_explorer_item.xml
@@ -9,27 +9,24 @@
android:background="?selectableItemBackground"
android:layout_marginBottom="1dp">
-
-
-
+ android:layout_height="76dp"
+ android:paddingLeft="16dp"
+ android:paddingRight="16dp"
+ tools:src="@drawable/ic_file"
+ android:layout_gravity="center_vertical"
+ android:contentDescription="@string/file_icon" />
+ android:layout_marginEnd="16dp"
+ android:layout_centerVertical="true">
+ android:paddingTop="4dp" >
-
\ No newline at end of file
diff --git a/app/src/main/res/menu/activity_main_drawer.xml b/app/src/main/res/menu/activity_main_drawer.xml
index e2ddb65..fb174a3 100644
--- a/app/src/main/res/menu/activity_main_drawer.xml
+++ b/app/src/main/res/menu/activity_main_drawer.xml
@@ -22,6 +22,11 @@
android:icon="@drawable/ic_import"
android:title="@string/import_rclone_config" />
+
- true
- @color/colorPrimaryDark
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/values-v27/styles.xml b/app/src/main/res/values-v27/styles.xml
index ab7e6e5..65ceb1c 100644
--- a/app/src/main/res/values-v27/styles.xml
+++ b/app/src/main/res/values-v27/styles.xml
@@ -7,4 +7,251 @@
- @android:color/white
- true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/values/about_libraries_exfile_picker.xml b/app/src/main/res/values/about_libraries_exfile_picker.xml
deleted file mode 100644
index 2af1458..0000000
--- a/app/src/main/res/values/about_libraries_exfile_picker.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Artem Bazhanov
- https://github.com/bartwell/
- ExFile Picker
- Open source Android library. Implement choosing files and directories in your application.
-
- https://github.com/bartwell/ExFilePicker/
- MIT
- true
- https://github.com/bartwell/ExFilePicker/
-
\ No newline at end of file
diff --git a/app/src/main/res/values/about_libraries_floating_action_button_speed_dial.xml b/app/src/main/res/values/about_libraries_floating_action_button_speed_dial.xml
deleted file mode 100644
index ad6dc19..0000000
--- a/app/src/main/res/values/about_libraries_floating_action_button_speed_dial.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Roberto Leinardi
- https://github.com/leinardi/
- Floating Action Button Speed Dial
- A Floating Action Button Speed Dial implementation for Android that follows the Material Design specification
-
- https://github.com/leinardi/FloatingActionButtonSpeedDial/
- apache_2_0
- true
- https://github.com/leinardi/FloatingActionButtonSpeedDial/
-
\ No newline at end of file
diff --git a/app/src/main/res/values/about_libraries_fontawesome.xml b/app/src/main/res/values/about_libraries_fontawesome.xml
deleted file mode 100644
index 6e21fb8..0000000
--- a/app/src/main/res/values/about_libraries_fontawesome.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Fort Awesome
- https://github.com/FortAwesome/
- Font Awesome
- The iconic SVG, font, and CSS toolkit
-
- https://fontawesome.com/
- CC BY 4.0 License
- true
- https://github.com/FortAwesome/Font-Awesome/
-
\ No newline at end of file
diff --git a/app/src/main/res/values/about_libraries_icon.xml b/app/src/main/res/values/about_libraries_icon.xml
deleted file mode 100644
index 46e2650..0000000
--- a/app/src/main/res/values/about_libraries_icon.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Smashicons
- https://www.flaticon.com/authors/smashicons/
- Smashicons
- Icons made by Smashicons from Flaticon, licensed by Creative Commons BY 3.0
-
- https://www.flaticon.com/
- Creative Commons BY 3.0
- true
- https://www.flaticon.com/authors/smashicons/
-
\ No newline at end of file
diff --git a/app/src/main/res/values/about_libraries_markdown_view.xml b/app/src/main/res/values/about_libraries_markdown_view.xml
deleted file mode 100644
index 8d252a0..0000000
--- a/app/src/main/res/values/about_libraries_markdown_view.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Feras Alnatsheh
- https://github.com/falnatsheh/
- Markdown View
- MarkdownView is an Android webview with the capablity of loading Markdown text or file and display it as HTML, it uses MarkdownJ and extends Android webview.
-
- https://github.com/falnatsheh/MarkdownView/
- apache_2.0
- true
- https://github.com/falnatsheh/MarkdownView/
-
\ No newline at end of file
diff --git a/app/src/main/res/values/about_libraries_materialdesign.xml b/app/src/main/res/values/about_libraries_materialdesign.xml
deleted file mode 100644
index 07de5dd..0000000
--- a/app/src/main/res/values/about_libraries_materialdesign.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Austin Andrews
- https://github.com/Templarian/
- Material Design
- 2200+ Material Design Icons from the Community
-
- https://github.com/Templarian/MaterialDesign/
-
- true
- https://github.com/Templarian/MaterialDesign/
-
\ No newline at end of file
diff --git a/app/src/main/res/values/about_libraries_rclone.xml b/app/src/main/res/values/about_libraries_rclone.xml
deleted file mode 100644
index 7a6f67e..0000000
--- a/app/src/main/res/values/about_libraries_rclone.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Nick Craig-Wood
- https://www.craig-wood.com/nick/
- rclone
- "rsync for cloud storage" - Google Drive, Amazon Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Cloudfiles, Google Cloud Storage, Yandex Files
-
- https://rclone.org/
- MIT
- true
- https://github.com/ncw/rclone/
-
\ No newline at end of file
diff --git a/app/src/main/res/values/about_libraries_toasty.xml b/app/src/main/res/values/about_libraries_toasty.xml
deleted file mode 100644
index d66229a..0000000
--- a/app/src/main/res/values/about_libraries_toasty.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Daniel Morales
- https://github.com/GrenderG/
- Toasty
- The usual Toast, but with steroids
-
- https://github.com/GrenderG/Toasty/
- lgpl_3
- true
- https://github.com/GrenderG/Toasty/
-
\ No newline at end of file
diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml
new file mode 100644
index 0000000..a9ca802
--- /dev/null
+++ b/app/src/main/res/values/attrs.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 2d45829..a06bb4f 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -8,4 +8,88 @@
#FFFFFF
#DDDDDD
#E0E0E0
+
+ #212121
+ #757575
+ #BDBDBD
+
+ #F44336
+ #D32F2F
+ #FFCDD2
+ #E91E63
+ #C2185B
+ #F8BBD0
+ #9C27B0
+ #7B1FA2
+ #E1BEE7
+ #673AB7
+ #512DA8
+ #D1C4E9
+ #3F51B5
+ #303F9F
+ #303F9F
+ #2196F3
+ #1976D2
+ #BBDEFB
+ #03A9F4
+ #0288D1
+ #B3E5FC
+ #00BCD4
+ #0097A7
+ #B2EBF2
+ #009688
+ #00796B
+ #B2DFDB
+ #4CAF50
+ #388E3C
+ #C8E6C9
+ #8BC34A
+ #689F38
+ #DCEDC8
+ #CDDC39
+ #AFB42B
+ #F0F4C3
+ #FFEB3B
+ #FBC02D
+ #FFF9C4
+ #FFC107
+ #FFA000
+ #FFECB3
+ #FF9800
+ #F57C00
+ #FFE0B2
+ #FF5722
+ #E64A19
+ #FFCCBC
+ #795548
+ #5D4037
+ #D7CCC8
+ #9E9E9E
+ #616161
+ #F5F5F5
+ #607D8B
+ #455A64
+ #CFD8DC
+
+ #FF5252
+ #FF4081
+ #E040FB
+ #7C4DFF
+ #536DFE
+ #448AFF
+ #03A9F4
+ #00BCD4
+ #009688
+ #4CAF50
+ #8BC34A
+ #CDDC39
+ #FFEB3B
+ #FFC107
+ #FF9800
+ #FF5722
+ #795548
+ #9E9E9E
+ #607D8B
+
+
diff --git a/app/src/main/res/values/custom_color_choices.xml b/app/src/main/res/values/custom_color_choices.xml
new file mode 100644
index 0000000..c1b55d2
--- /dev/null
+++ b/app/src/main/res/values/custom_color_choices.xml
@@ -0,0 +1,46 @@
+
+
+
+ - @color/colorPrimary_Red
+ - @color/colorPrimary_Pink
+ - @color/colorPrimary_Purple
+ - @color/colorPrimary_DeepPurple
+ - @color/colorPrimary_Indigo
+ - @color/colorPrimary_Blue
+ - @color/colorPrimary_LightBlue
+ - @color/colorPrimary_Cyan
+ - @color/colorPrimary_Teal
+ - @color/colorPrimary_Green
+ - @color/colorPrimary_LightGreen
+ - @color/colorPrimary_Lime
+ - @color/colorPrimary_Yellow
+ - @color/colorPrimary_Amber
+ - @color/colorPrimary_Orange
+ - @color/colorPrimary_DeepOrange
+ - @color/colorPrimary_Brown
+ - @color/colorPrimary_Grey
+ - @color/colorPrimary_BlueGrey
+
+
+
+ - @color/colorAccent_Red
+ - @color/colorAccent_Pink
+ - @color/colorAccent_Purple
+ - @color/colorAccent_DeepPurple
+ - @color/colorAccent_Indigo
+ - @color/colorAccent_Blue
+ - @color/colorAccent_LightBlue
+ - @color/colorAccent_Cyan
+ - @color/colorAccent_Teal
+ - @color/colorAccent_Green
+ - @color/colorAccent_LightGreen
+ - @color/colorAccent_Lime
+ - @color/colorAccent_Yellow
+ - @color/colorAccent_Amber
+ - @color/colorAccent_Orange
+ - @color/colorAccent_DeepOrange
+ - @color/colorAccent_Brown
+ - @color/colorAccent_Grey
+ - @color/colorAccent_BlueGrey
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 1587628..448e26d 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -123,4 +123,17 @@
Audio
Video
Image
+ Settings
+ General
+ Primary Color
+ Accent Color
+ Look and Feel
+ App restart required
+ Select a primary color
+ Select an accent color
+ AboutLibsActivity
+ App icon made by
+ Smashicons
+ from
+ Flaticon
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 545b9c6..5972764 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -17,4 +17,215 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/xml/pref_general.xml b/app/src/main/res/xml/pref_general.xml
new file mode 100644
index 0000000..f2552cf
--- /dev/null
+++ b/app/src/main/res/xml/pref_general.xml
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/app/src/main/res/xml/pref_headers.xml b/app/src/main/res/xml/pref_headers.xml
new file mode 100644
index 0000000..1869cdc
--- /dev/null
+++ b/app/src/main/res/xml/pref_headers.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/xml/pref_look_and_feel.xml b/app/src/main/res/xml/pref_look_and_feel.xml
new file mode 100644
index 0000000..4da17fd
--- /dev/null
+++ b/app/src/main/res/xml/pref_look_and_feel.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
\ No newline at end of file