build: add preference dependency and settings resources
This commit is contained in:
@@ -53,6 +53,7 @@ dependencies {
|
||||
implementation(libs.androidx.lifecycle.viewmodel.ktx)
|
||||
implementation(libs.androidx.recyclerview)
|
||||
implementation(libs.androidx.swiperefreshlayout)
|
||||
implementation(libs.androidx.preference)
|
||||
implementation(libs.kotlinx.coroutines.android)
|
||||
implementation(libs.commonmark)
|
||||
|
||||
|
||||
35
app/src/main/res/layout/dialog_settings.xml
Normal file
35
app/src/main/res/layout/dialog_settings.xml
Normal file
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:paddingStart="24dp"
|
||||
android:paddingTop="8dp"
|
||||
android:paddingEnd="24dp"
|
||||
android:paddingBottom="8dp">
|
||||
|
||||
<FrameLayout
|
||||
android:id="@+id/settingsFragmentContainer"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="320dp" />
|
||||
|
||||
<ProgressBar
|
||||
android:id="@+id/settingsApplyProgress"
|
||||
style="@style/Widget.AppCompat.ProgressBar"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="end"
|
||||
android:layout_marginTop="12dp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/settingsSaveAndCloseButton"
|
||||
style="@style/Widget.Material3.Button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="end"
|
||||
android:layout_marginTop="12dp"
|
||||
android:text="@string/settings_save_and_close" />
|
||||
|
||||
</LinearLayout>
|
||||
@@ -91,4 +91,20 @@
|
||||
<string name="drawer_profile_unavailable">Profile unavailable</string>
|
||||
<string name="drawer_workspaces_unavailable">Workspaces unavailable</string>
|
||||
<string name="drawer_loading">Loading...</string>
|
||||
<string name="settings_theme_title">Theme</string>
|
||||
<string name="settings_base_url_title">Base URL</string>
|
||||
<string name="settings_api_key_title">API key</string>
|
||||
<string name="settings_save_and_close">Save and close</string>
|
||||
|
||||
<string-array name="settings_theme_entries">
|
||||
<item>Light</item>
|
||||
<item>Dark</item>
|
||||
<item>Follow System</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="settings_theme_values">
|
||||
<item>light</item>
|
||||
<item>dark</item>
|
||||
<item>system</item>
|
||||
</string-array>
|
||||
</resources>
|
||||
|
||||
23
app/src/main/res/xml/settings_preferences.xml
Normal file
23
app/src/main/res/xml/settings_preferences.xml
Normal file
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<ListPreference
|
||||
android:defaultValue="system"
|
||||
android:entries="@array/settings_theme_entries"
|
||||
android:entryValues="@array/settings_theme_values"
|
||||
android:key="pref_theme_draft"
|
||||
android:title="@string/settings_theme_title" />
|
||||
|
||||
<EditTextPreference
|
||||
android:defaultValue="@string/default_base_url"
|
||||
android:key="pref_base_url_draft"
|
||||
android:title="@string/settings_base_url_title"
|
||||
app:useSimpleSummaryProvider="true" />
|
||||
|
||||
<EditTextPreference
|
||||
android:key="pref_api_key_draft"
|
||||
android:title="@string/settings_api_key_title"
|
||||
app:useSimpleSummaryProvider="true" />
|
||||
|
||||
</PreferenceScreen>
|
||||
@@ -16,6 +16,7 @@ lifecycle = "2.8.7"
|
||||
swiperefreshlayout = "1.1.0"
|
||||
recyclerview = "1.3.2"
|
||||
activity = "1.9.3"
|
||||
preference = "1.2.1"
|
||||
commonmark = "0.22.0"
|
||||
|
||||
[libraries]
|
||||
@@ -35,6 +36,7 @@ androidx-lifecycle-runtime-ktx = { group = "androidx.lifecycle", name = "lifecyc
|
||||
androidx-activity-ktx = { group = "androidx.activity", name = "activity-ktx", version.ref = "activity" }
|
||||
androidx-swiperefreshlayout = { group = "androidx.swiperefreshlayout", name = "swiperefreshlayout", version.ref = "swiperefreshlayout" }
|
||||
androidx-recyclerview = { group = "androidx.recyclerview", name = "recyclerview", version.ref = "recyclerview" }
|
||||
androidx-preference = { group = "androidx.preference", name = "preference-ktx", version.ref = "preference" }
|
||||
kotlinx-coroutines-test = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-test", version.ref = "coroutines" }
|
||||
commonmark = { group = "org.commonmark", name = "commonmark", version.ref = "commonmark" }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user