diff options
Diffstat (limited to '')
14 files changed, 207 insertions, 2 deletions
diff --git a/app/src/main/res/drawable-night/ic_error_outline_black_24dp.xml b/app/src/main/res/drawable-night/ic_error_outline_black_24dp.xml new file mode 100644 index 00000000..e7d3eb31 --- /dev/null +++ b/app/src/main/res/drawable-night/ic_error_outline_black_24dp.xml @@ -0,0 +1,9 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="24dp" + android:height="24dp" + android:viewportWidth="24.0" + android:viewportHeight="24.0"> + <path + android:fillColor="#FFFFFFFF" + android:pathData="M11,15h2v2h-2zM11,7h2v6h-2zM11.99,2C6.47,2 2,6.48 2,12s4.47,10 9.99,10C17.52,22 22,17.52 22,12S17.52,2 11.99,2zM12,20c-4.42,0 -8,-3.58 -8,-8s3.58,-8 8,-8 8,3.58 8,8 -3.58,8 -8,8z"/> +</vector> diff --git a/app/src/main/res/drawable-night/ic_outline_access_time_24px.xml b/app/src/main/res/drawable-night/ic_outline_access_time_24px.xml new file mode 100644 index 00000000..a846b915 --- /dev/null +++ b/app/src/main/res/drawable-night/ic_outline_access_time_24px.xml @@ -0,0 +1,9 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="24dp" + android:height="24dp" + android:viewportWidth="24" + android:viewportHeight="24"> + <path + android:fillColor="#FFFFFFFF" + android:pathData="M11.99,2C6.47,2 2,6.48 2,12s4.47,10 9.99,10C17.52,22 22,17.52 22,12S17.52,2 11.99,2zM12,20c-4.42,0 -8,-3.58 -8,-8s3.58,-8 8,-8 8,3.58 8,8 -3.58,8 -8,8zM12.5,7L11,7v6l5.25,3.15 0.75,-1.23 -4.5,-2.67z"/> +</vector> diff --git a/app/src/main/res/drawable-night/ic_outline_color_lens_24px.xml b/app/src/main/res/drawable-night/ic_outline_color_lens_24px.xml new file mode 100644 index 00000000..d1bc2624 --- /dev/null +++ b/app/src/main/res/drawable-night/ic_outline_color_lens_24px.xml @@ -0,0 +1,21 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="24dp" + android:height="24dp" + android:viewportWidth="24" + android:viewportHeight="24"> + <path + android:fillColor="#FF000000" + android:pathData="M12,22C6.49,22 2,17.51 2,12S6.49,2 12,2s10,4.04 10,9c0,3.31 -2.69,6 -6,6h-1.77c-0.28,0 -0.5,0.22 -0.5,0.5 0,0.12 0.05,0.23 0.13,0.33 0.41,0.47 0.64,1.06 0.64,1.67 0,1.38 -1.12,2.5 -2.5,2.5zM12,4c-4.41,0 -8,3.59 -8,8s3.59,8 8,8c0.28,0 0.5,-0.22 0.5,-0.5 0,-0.16 -0.08,-0.28 -0.14,-0.35 -0.41,-0.46 -0.63,-1.05 -0.63,-1.65 0,-1.38 1.12,-2.5 2.5,-2.5L16,15c2.21,0 4,-1.79 4,-4 0,-3.86 -3.59,-7 -8,-7z"/> + <path + android:fillColor="#FF000000" + android:pathData="M6.5,11.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/> + <path + android:fillColor="#FF000000" + android:pathData="M9.5,7.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/> + <path + android:fillColor="#FF000000" + android:pathData="M14.5,7.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/> + <path + android:fillColor="#FF000000" + android:pathData="M17.5,11.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/> +</vector> diff --git a/app/src/main/res/drawable-night/ic_outline_notifications_24px.xml b/app/src/main/res/drawable-night/ic_outline_notifications_24px.xml new file mode 100644 index 00000000..43d52df4 --- /dev/null +++ b/app/src/main/res/drawable-night/ic_outline_notifications_24px.xml @@ -0,0 +1,9 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="24dp" + android:height="24dp" + android:viewportWidth="24" + android:viewportHeight="24"> + <path + android:fillColor="#FFFFFFFF" + android:pathData="M12,22c1.1,0 2,-0.9 2,-2h-4c0,1.1 0.9,2 2,2zM18,16v-5c0,-3.07 -1.63,-5.64 -4.5,-6.32L13.5,4c0,-0.83 -0.67,-1.5 -1.5,-1.5s-1.5,0.67 -1.5,1.5v0.68C7.64,5.36 6,7.92 6,11v5l-2,2v1h16v-1l-2,-2zM16,17L8,17v-6c0,-2.48 1.51,-4.5 4,-4.5s4,2.02 4,4.5v6z"/> +</vector> diff --git a/app/src/main/res/drawable/ic_outline_access_time_24px.xml b/app/src/main/res/drawable/ic_outline_access_time_24px.xml new file mode 100644 index 00000000..dcb0d6ec --- /dev/null +++ b/app/src/main/res/drawable/ic_outline_access_time_24px.xml @@ -0,0 +1,9 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="24dp" + android:height="24dp" + android:viewportWidth="24" + android:viewportHeight="24"> + <path + android:fillColor="#FF000000" + android:pathData="M11.99,2C6.47,2 2,6.48 2,12s4.47,10 9.99,10C17.52,22 22,17.52 22,12S17.52,2 11.99,2zM12,20c-4.42,0 -8,-3.58 -8,-8s3.58,-8 8,-8 8,3.58 8,8 -3.58,8 -8,8zM12.5,7L11,7v6l5.25,3.15 0.75,-1.23 -4.5,-2.67z"/> +</vector> diff --git a/app/src/main/res/drawable/ic_outline_color_lens_24px.xml b/app/src/main/res/drawable/ic_outline_color_lens_24px.xml new file mode 100644 index 00000000..d1bc2624 --- /dev/null +++ b/app/src/main/res/drawable/ic_outline_color_lens_24px.xml @@ -0,0 +1,21 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="24dp" + android:height="24dp" + android:viewportWidth="24" + android:viewportHeight="24"> + <path + android:fillColor="#FF000000" + android:pathData="M12,22C6.49,22 2,17.51 2,12S6.49,2 12,2s10,4.04 10,9c0,3.31 -2.69,6 -6,6h-1.77c-0.28,0 -0.5,0.22 -0.5,0.5 0,0.12 0.05,0.23 0.13,0.33 0.41,0.47 0.64,1.06 0.64,1.67 0,1.38 -1.12,2.5 -2.5,2.5zM12,4c-4.41,0 -8,3.59 -8,8s3.59,8 8,8c0.28,0 0.5,-0.22 0.5,-0.5 0,-0.16 -0.08,-0.28 -0.14,-0.35 -0.41,-0.46 -0.63,-1.05 -0.63,-1.65 0,-1.38 1.12,-2.5 2.5,-2.5L16,15c2.21,0 4,-1.79 4,-4 0,-3.86 -3.59,-7 -8,-7z"/> + <path + android:fillColor="#FF000000" + android:pathData="M6.5,11.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/> + <path + android:fillColor="#FF000000" + android:pathData="M9.5,7.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/> + <path + android:fillColor="#FF000000" + android:pathData="M14.5,7.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/> + <path + android:fillColor="#FF000000" + android:pathData="M17.5,11.5m-1.5,0a1.5,1.5 0,1 1,3 0a1.5,1.5 0,1 1,-3 0"/> +</vector> diff --git a/app/src/main/res/drawable/ic_outline_notifications_24px.xml b/app/src/main/res/drawable/ic_outline_notifications_24px.xml new file mode 100644 index 00000000..0c2c90a7 --- /dev/null +++ b/app/src/main/res/drawable/ic_outline_notifications_24px.xml @@ -0,0 +1,9 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="24dp" + android:height="24dp" + android:viewportWidth="24" + android:viewportHeight="24"> + <path + android:fillColor="#FF000000" + android:pathData="M12,22c1.1,0 2,-0.9 2,-2h-4c0,1.1 0.9,2 2,2zM18,16v-5c0,-3.07 -1.63,-5.64 -4.5,-6.32L13.5,4c0,-0.83 -0.67,-1.5 -1.5,-1.5s-1.5,0.67 -1.5,1.5v0.68C7.64,5.36 6,7.92 6,11v5l-2,2v1h16v-1l-2,-2zM16,17L8,17v-6c0,-2.48 1.51,-4.5 4,-4.5s4,2.02 4,4.5v6z"/> +</vector> diff --git a/app/src/main/res/layout/fragment_post.xml b/app/src/main/res/layout/fragment_post.xml index dcacaf49..9083b01d 100644 --- a/app/src/main/res/layout/fragment_post.xml +++ b/app/src/main/res/layout/fragment_post.xml @@ -3,7 +3,6 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" - android:id="@+id/coordinator_layout_post_fragment" tools:application="ml.docilealligator.infinityforreddit.PostFragment"> <com.lsjwzh.widget.materialloadingprogressbar.CircleProgressBar diff --git a/app/src/main/res/layout/settings_activity.xml b/app/src/main/res/layout/settings_activity.xml new file mode 100644 index 00000000..0b9ed248 --- /dev/null +++ b/app/src/main/res/layout/settings_activity.xml @@ -0,0 +1,26 @@ +<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + xmlns:app="http://schemas.android.com/apk/res-auto"> + + <com.google.android.material.appbar.AppBarLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:theme="@style/AppTheme.AppBarOverlay"> + + <androidx.appcompat.widget.Toolbar + android:id="@+id/toolbar_settings_activity" + android:layout_width="match_parent" + android:layout_height="?attr/actionBarSize" + app:navigationIcon="?attr/homeAsUpIndicator" + app:popupTheme="@style/AppTheme.PopupOverlay" /> + + </com.google.android.material.appbar.AppBarLayout> + + <FrameLayout + android:id="@+id/frame_layout_settings_activity" + android:layout_width="match_parent" + android:layout_height="match_parent" + app:layout_behavior="@string/appbar_scrolling_view_behavior" /> + +</androidx.coordinatorlayout.widget.CoordinatorLayout>
\ No newline at end of file diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml new file mode 100644 index 00000000..99955ed6 --- /dev/null +++ b/app/src/main/res/values/arrays.xml @@ -0,0 +1,33 @@ +<resources> + <string-array name="settings_notification_interval"> + <item>1 hour</item> + <item>2 hours</item> + <item>3 hours</item> + <item>4 hours</item> + <item>6 hours</item> + <item>12 hours</item> + <item>1 day</item> + </string-array> + + <string-array name="settings_notification_interval_values"> + <item>1</item> + <item>2</item> + <item>3</item> + <item>4</item> + <item>6</item> + <item>12</item> + <item>24</item> + </string-array> + + <string-array name="settings_theme"> + <item>Light Theme</item> + <item>Dark Theme</item> + <item>Device Default</item> + </string-array> + + <string-array name="settings_theme_values"> + <item>0</item> + <item>1</item> + <item>2</item> + </string-array> +</resources>
\ 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 5a245f76..dba73658 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -13,7 +13,8 @@ <string name="search_subreddits_activity_label">Subreddits</string> <string name="edit_post_activity_label">Edit Post</string> <string name="edit_comment_activity_label">Edit Comment</string> - <string name="view_message_activity">Inbox</string> + <string name="view_message_activity_label">Inbox</string> + <string name="settings_activity_label">Settings</string> <string name="navigation_drawer_open">Open navigation drawer</string> <string name="navigation_drawer_close">Close navigation drawer</string> @@ -239,4 +240,14 @@ <string name="label_post">Post</string> <string name="account_switched">Account Switched. So all other pages are gone.</string> + + <string name="settings_account_master_title">Account</string> + <string name="settings_notification_master_title">Notification</string> + <string name="settings_notification_enable_notification_title">Enable Notifications</string> + <string name="settings_notification_interval_title">Check Notifications Interval</string> + <string name="settings_theme_title">Theme</string> + <string name="settings_theme_light__theme_summary">Light Theme</string> + <string name="settings_theme_dark_theme_summary">Dark Theme</string> + <string name="settings_theme_system_default_summary">Device default</string> + <string name="settings_enable_nsfw_title">Enable NSFW</string> </resources> diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 0b20ce0e..2b97cc0d 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -60,4 +60,8 @@ <item name="android:textColor">@color/primaryTextColor</item> </style> + <style name="PreferenceActivityTheme" parent="AppTheme.NoActionBar"> + <item name="android:textColorPrimary">@color/primaryTextColor</item> + </style> + </resources> diff --git a/app/src/main/res/xml/main_preferences.xml b/app/src/main/res/xml/main_preferences.xml new file mode 100644 index 00000000..5d624d7f --- /dev/null +++ b/app/src/main/res/xml/main_preferences.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="utf-8"?> +<androidx.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto"> + + <Preference + app:key="notification_master" + app:icon="@drawable/ic_outline_notifications_24px" + app:title="@string/settings_notification_master_title" + app:fragment="Settings.NotificationPreferenceFragment" /> + + <ListPreference + app:defaultValue="0" + app:entries="@array/settings_theme" + app:entryValues="@array/settings_theme_values" + app:key="theme" + app:icon="@drawable/ic_outline_color_lens_24px" + app:title="@string/settings_theme_title" + app:useSimpleSummaryProvider="true" /> + + <SwitchPreference + app:defaultValue="true" + app:key="nsfw" + app:title="@string/settings_enable_nsfw_title"/> + +</androidx.preference.PreferenceScreen>
\ No newline at end of file diff --git a/app/src/main/res/xml/notification_preferences.xml b/app/src/main/res/xml/notification_preferences.xml new file mode 100644 index 00000000..1bb81106 --- /dev/null +++ b/app/src/main/res/xml/notification_preferences.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="utf-8"?> +<androidx.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto"> + + <SwitchPreference + app:defaultValue="true" + app:key="enable_notification" + app:icon="@drawable/ic_outline_notifications_24px" + app:title="@string/settings_notification_enable_notification_title"/> + + <ListPreference + app:defaultValue="2" + app:entries="@array/settings_notification_interval" + app:entryValues="@array/settings_notification_interval_values" + app:key="notificaiton_interval" + app:icon="@drawable/ic_outline_access_time_24px" + app:title="@string/settings_notification_interval_title" + app:useSimpleSummaryProvider="true" /> + +</androidx.preference.PreferenceScreen>
\ No newline at end of file |