Draft quick logo and add license and about entries in settings
This commit is contained in:
		| @@ -1,6 +1,7 @@ | |||||||
| plugins { | plugins { | ||||||
|     id 'com.android.application' |     id 'com.android.application' | ||||||
|     id 'org.jetbrains.kotlin.android' |     id 'org.jetbrains.kotlin.android' | ||||||
|  |     id 'com.mikepenz.aboutlibraries.plugin' version '10.10.0' | ||||||
| } | } | ||||||
|  |  | ||||||
| android { | android { | ||||||
| @@ -50,5 +51,6 @@ dependencies { | |||||||
|     androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1' |     androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1' | ||||||
|  |  | ||||||
|     implementation 'com.caverock:androidsvg-aar:1.4' |     implementation 'com.caverock:androidsvg-aar:1.4' | ||||||
|  |     implementation "com.mikepenz:aboutlibraries:10.10.0" | ||||||
|  |  | ||||||
| } | } | ||||||
| @@ -0,0 +1,32 @@ | |||||||
|  | package net.helcel.beendroid.activity | ||||||
|  |  | ||||||
|  | import android.os.Bundle | ||||||
|  | import android.view.LayoutInflater | ||||||
|  | import android.view.View | ||||||
|  | import android.view.ViewGroup | ||||||
|  | import androidx.fragment.app.Fragment | ||||||
|  | import net.helcel.beendroid.R | ||||||
|  | import net.helcel.beendroid.databinding.FragmentAboutBinding | ||||||
|  |  | ||||||
|  | class AboutFragment: Fragment() { | ||||||
|  |     private var _binding: FragmentAboutBinding? = null | ||||||
|  |  | ||||||
|  |     // This property is only valid between onCreateView and | ||||||
|  |     // onDestroyView. | ||||||
|  |     private val binding get() = _binding!! | ||||||
|  |  | ||||||
|  |     override fun onCreateView( | ||||||
|  |         inflater: LayoutInflater, | ||||||
|  |         container: ViewGroup?, | ||||||
|  |         savedInstanceState: Bundle? | ||||||
|  |     ): View { | ||||||
|  |         _binding = FragmentAboutBinding.inflate(inflater, container, false) | ||||||
|  |  | ||||||
|  |         return binding.root | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     override fun onDestroyView() { | ||||||
|  |         super.onDestroyView() | ||||||
|  |         _binding = null | ||||||
|  |     } | ||||||
|  | } | ||||||
| @@ -92,7 +92,7 @@ class FoldingListAdapter( | |||||||
|                 textView.setTypeface(null, Typeface.BOLD) |                 textView.setTypeface(null, Typeface.BOLD) | ||||||
|  |  | ||||||
|                 val colorGrayTyped = TypedValue() |                 val colorGrayTyped = TypedValue() | ||||||
|                 ctx.theme.resolveAttribute(android.R.attr.textColorTertiary, colorGrayTyped, true) |                 ctx.theme.resolveAttribute(android.R.attr.panelColorBackground, colorGrayTyped, true) | ||||||
|                 val color = Color.valueOf(colorGrayTyped.data) |                 val color = Color.valueOf(colorGrayTyped.data) | ||||||
|                 textView.setBackgroundColor(Color.valueOf(color.red(), color.green(), color.blue(), 0.5f).toArgb()) |                 textView.setBackgroundColor(Color.valueOf(color.red(), color.green(), color.blue(), 0.5f).toArgb()) | ||||||
|                 checkBox.visibility = View.INVISIBLE |                 checkBox.visibility = View.INVISIBLE | ||||||
|   | |||||||
| @@ -0,0 +1,45 @@ | |||||||
|  | package net.helcel.beendroid.activity | ||||||
|  |  | ||||||
|  | import android.os.Bundle | ||||||
|  | import android.view.LayoutInflater | ||||||
|  | import android.view.MenuItem | ||||||
|  | import android.view.View | ||||||
|  | import android.view.ViewGroup | ||||||
|  | import androidx.appcompat.app.ActionBar | ||||||
|  | import androidx.appcompat.widget.Toolbar | ||||||
|  | import androidx.fragment.app.Fragment | ||||||
|  | import com.mikepenz.aboutlibraries.Libs | ||||||
|  | import net.helcel.beendroid.R | ||||||
|  | import net.helcel.beendroid.databinding.FragmentLicenseBinding | ||||||
|  | import com.mikepenz.aboutlibraries.LibsBuilder | ||||||
|  |  | ||||||
|  | class LicenseFragment: Fragment() { | ||||||
|  |     private var _binding: FragmentLicenseBinding? = null | ||||||
|  |  | ||||||
|  |     // This property is only valid between onCreateView and | ||||||
|  |     // onDestroyView. | ||||||
|  |     private val binding get() = _binding!! | ||||||
|  |  | ||||||
|  |     override fun onCreateView( | ||||||
|  |         inflater: LayoutInflater, | ||||||
|  |         container: ViewGroup?, | ||||||
|  |         savedInstanceState: Bundle? | ||||||
|  |     ): View { | ||||||
|  |         _binding = FragmentLicenseBinding.inflate(inflater, container, false) | ||||||
|  |  | ||||||
|  |         val librariesFragment = LibsBuilder() | ||||||
|  |             .withLicenseShown(true) | ||||||
|  |             .supportFragment() | ||||||
|  |  | ||||||
|  |         requireActivity().supportFragmentManager.beginTransaction() | ||||||
|  |             .replace(R.id.license_fragment_view, librariesFragment) | ||||||
|  |             .commit() | ||||||
|  |  | ||||||
|  |         return binding.root | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     override fun onDestroyView() { | ||||||
|  |         super.onDestroyView() | ||||||
|  |         _binding = null | ||||||
|  |     } | ||||||
|  | } | ||||||
| @@ -8,6 +8,7 @@ import android.util.TypedValue | |||||||
| import android.view.MenuItem | import android.view.MenuItem | ||||||
| import androidx.activity.addCallback | import androidx.activity.addCallback | ||||||
| import androidx.appcompat.app.AppCompatActivity | import androidx.appcompat.app.AppCompatActivity | ||||||
|  | import androidx.navigation.findNavController | ||||||
| import net.helcel.beendroid.R | import net.helcel.beendroid.R | ||||||
|  |  | ||||||
| class  SettingsActivity: AppCompatActivity() { | class  SettingsActivity: AppCompatActivity() { | ||||||
| @@ -27,13 +28,39 @@ class  SettingsActivity: AppCompatActivity() { | |||||||
|  |  | ||||||
|         // Populate activity with settings fragment |         // Populate activity with settings fragment | ||||||
|         supportFragmentManager.beginTransaction() |         supportFragmentManager.beginTransaction() | ||||||
|             .replace(R.id.fragment_view, SettingsFragment()) |             .replace(R.id.fragment_view, SettingsFragment(), getString(R.string.action_settings)) | ||||||
|             .commit() |             .commit() | ||||||
|  |  | ||||||
|  |         // Change title in action bar according to current fragment | ||||||
|  |         supportFragmentManager.addFragmentOnAttachListener { _, _ -> | ||||||
|  |             supportActionBar?.title = supportFragmentManager.findFragmentById(R.id.fragment_view).let { | ||||||
|  |                 when (it) { | ||||||
|  |                     is LicenseFragment -> getString(R.string.licenses) | ||||||
|  |                     is AboutFragment -> getString(R.string.about) | ||||||
|  |                     else -> getString(R.string.action_settings) | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |         } | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     override fun onOptionsItemSelected(item: MenuItem): Boolean { |     override fun onOptionsItemSelected(item: MenuItem): Boolean { | ||||||
|         // Configure on back pressed |         // Configure on back pressed | ||||||
|         finish() |         supportFragmentManager.findFragmentById(R.id.fragment_view).let { | ||||||
|  |             when (it) { | ||||||
|  |                 is LicenseFragment, is AboutFragment -> { | ||||||
|  |                     supportFragmentManager.beginTransaction() | ||||||
|  |                         .remove(it) | ||||||
|  |                         .commit() | ||||||
|  |                     supportFragmentManager.beginTransaction() | ||||||
|  |                         .replace(R.id.fragment_view, SettingsFragment(), getString(R.string.action_settings)) | ||||||
|  |                         .commit() | ||||||
|  |                     supportActionBar?.title = getString(R.string.action_settings) | ||||||
|  |                 } | ||||||
|  |                 else -> { | ||||||
|  |                     finish() | ||||||
|  |                 } | ||||||
|  |             } | ||||||
|  |         } | ||||||
|         return super.onOptionsItemSelected(item) |         return super.onOptionsItemSelected(item) | ||||||
|     } |     } | ||||||
| } | } | ||||||
| @@ -6,6 +6,7 @@ import android.os.Bundle | |||||||
| import android.util.TypedValue | import android.util.TypedValue | ||||||
| import androidx.appcompat.app.AppCompatDelegate | import androidx.appcompat.app.AppCompatDelegate | ||||||
| import androidx.preference.ListPreference | import androidx.preference.ListPreference | ||||||
|  | import androidx.preference.Preference | ||||||
| import androidx.preference.PreferenceFragmentCompat | import androidx.preference.PreferenceFragmentCompat | ||||||
| import net.helcel.beendroid.R | import net.helcel.beendroid.R | ||||||
|  |  | ||||||
| @@ -22,6 +23,23 @@ class SettingsFragment: PreferenceFragmentCompat() { | |||||||
|             setTheme(requireContext(), key as String) |             setTheme(requireContext(), key as String) | ||||||
|         } |         } | ||||||
|  |  | ||||||
|  |         val aboutPreference = findPreference<Preference>(getString(R.string.about)) | ||||||
|  |         aboutPreference?.setOnPreferenceClickListener { | ||||||
|  |             requireActivity().supportFragmentManager.beginTransaction() | ||||||
|  |                 .replace(R.id.fragment_view, AboutFragment(), getString(R.string.about)) | ||||||
|  |                 .commit() | ||||||
|  |  | ||||||
|  |             true | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         val licensesPreference = findPreference<Preference>(getString(R.string.licenses)) | ||||||
|  |         licensesPreference?.setOnPreferenceClickListener { | ||||||
|  |             requireActivity().supportFragmentManager.beginTransaction() | ||||||
|  |                 .replace(R.id.fragment_view, LicenseFragment(), getString(R.string.licenses)) | ||||||
|  |                 .commit() | ||||||
|  |             true | ||||||
|  |         } | ||||||
|  |  | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     companion object { |     companion object { | ||||||
|   | |||||||
| @@ -21,7 +21,7 @@ class PSVGWrapper(ctx: Context) { | |||||||
|  |  | ||||||
|     init { |     init { | ||||||
|         val colorSecondaryTyped = TypedValue() |         val colorSecondaryTyped = TypedValue() | ||||||
|         ctx.theme.resolveAttribute(android.R.attr.textColorTertiary, colorSecondaryTyped, true) |         ctx.theme.resolveAttribute(android.R.attr.panelColorBackground, colorSecondaryTyped, true) | ||||||
|         colorForeground = "\"#${Integer.toHexString(colorSecondaryTyped.data).subSequence(2, 8)}\"" |         colorForeground = "\"#${Integer.toHexString(colorSecondaryTyped.data).subSequence(2, 8)}\"" | ||||||
|  |  | ||||||
|         val colorBackgroundTyped = TypedValue() |         val colorBackgroundTyped = TypedValue() | ||||||
|   | |||||||
| @@ -1,30 +1,14 @@ | |||||||
| <vector xmlns:android="http://schemas.android.com/apk/res/android" | <vector xmlns:android="http://schemas.android.com/apk/res/android" | ||||||
|     xmlns:aapt="http://schemas.android.com/aapt" |     xmlns:aapt="http://schemas.android.com/aapt" | ||||||
|     android:width="108dp" |     android:width="12dp" | ||||||
|     android:height="108dp" |     android:height="12dp" | ||||||
|     android:viewportWidth="108" |     android:viewportWidth="1600" | ||||||
|     android:viewportHeight="108"> |     android:viewportHeight="1600" > | ||||||
|     <path android:pathData="M31,63.928c0,0 6.4,-11 12.1,-13.1c7.2,-2.6 26,-1.4 26,-1.4l38.1,38.1L107,108.928l-32,-1L31,63.928z"> |  | ||||||
|         <aapt:attr name="android:fillColor"> |  | ||||||
|             <gradient |  | ||||||
|                 android:endX="85.84757" |  | ||||||
|                 android:endY="92.4963" |  | ||||||
|                 android:startX="42.9492" |  | ||||||
|                 android:startY="49.59793" |  | ||||||
|                 android:type="linear"> |  | ||||||
|                 <item |  | ||||||
|                     android:color="#44000000" |  | ||||||
|                     android:offset="0.0" /> |  | ||||||
|                 <item |  | ||||||
|                     android:color="#00000000" |  | ||||||
|                     android:offset="1.0" /> |  | ||||||
|             </gradient> |  | ||||||
|         </aapt:attr> |  | ||||||
|     </path> |  | ||||||
|     <path |     <path | ||||||
|         android:fillColor="#FFFFFF" |         android:fillColor="#FFFFFF" | ||||||
|         android:fillType="nonZero" |         android:fillType="nonZero" | ||||||
|         android:pathData="M65.3,45.828l3.8,-6.6c0.2,-0.4 0.1,-0.9 -0.3,-1.1c-0.4,-0.2 -0.9,-0.1 -1.1,0.3l-3.9,6.7c-6.3,-2.8 -13.4,-2.8 -19.7,0l-3.9,-6.7c-0.2,-0.4 -0.7,-0.5 -1.1,-0.3C38.8,38.328 38.7,38.828 38.9,39.228l3.8,6.6C36.2,49.428 31.7,56.028 31,63.928h46C76.3,56.028 71.8,49.428 65.3,45.828zM43.4,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2c-0.3,-0.7 -0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C45.3,56.528 44.5,57.328 43.4,57.328L43.4,57.328zM64.6,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2s-0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C66.5,56.528 65.6,57.328 64.6,57.328L64.6,57.328z" |         android:pathData="m800,1200q-83,0 -156,-31.5Q571,1137 517,1083 463,1029 431.5,956 400,883 400,800 400,717 431.5,644 463,571 517,517 571,463 644,431.5 717,400 800,400q83,0 156,31.5 73,31.5 127,85.5 54,54 85.5,127 31.5,73 31.5,156 0,83 -31.5,156 -31.5,73 -85.5,127 -54,54 -127,85.5 -73,31.5 -156,31.5zM800,1120q134,0 227,-93 93,-93 93,-227 0,-7 -0.5,-14.5 -0.5,-7.5 -0.5,-12.5 -5,29 -27,48 -22,19 -52,19L960,840Q927,840 903.5,816.5 880,793 880,760L880,720L720,720v-80q0,-33 23.5,-56.5Q767,560 800,560h40v0q0,-23 12.5,-40.5Q865,502 883,491q-20,-5 -40.5,-8 -20.5,-3 -42.5,-3 -134,0 -227,93 -93,93 -93,227 0,0 0,0 0,0 0,0h200q66,0 113,47 47,47 47,113v40L720,1000v110q20,5 39.5,7.5 19.5,2.5 40.5,2.5z" | ||||||
|         android:strokeWidth="1" |         android:strokeWidth="1" | ||||||
|         android:strokeColor="#00000000" /> |         android:strokeColor="#00000000" /> | ||||||
| </vector> | </vector> | ||||||
							
								
								
									
										18
									
								
								app/src/main/res/drawable/checklist.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								app/src/main/res/drawable/checklist.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | |||||||
|  | <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="?attr/colorOnBackground" | ||||||
|  |     android:pathData="M22,7h-9v2h9V7zM22,15h-9v2h9V15z"/> | ||||||
|  |  | ||||||
|  | <path | ||||||
|  |     android:fillColor="?attr/colorPrimary" | ||||||
|  |     android:pathData="M5.54,11L2,7.46l1.41,-1.41l2.12,2.12l4.24,-4.24l1.41,1.41L5.54,11z"/> | ||||||
|  |  | ||||||
|  | <path | ||||||
|  |     android:fillColor="?attr/colorPrimary" | ||||||
|  |     android:pathData="M5.54,19L2,15.46l1.41,-1.41l2.12,2.12l4.24,-4.24l1.41,1.41L5.54,19z"/> | ||||||
|  | </vector> | ||||||
| @@ -2,169 +2,9 @@ | |||||||
| <vector xmlns:android="http://schemas.android.com/apk/res/android" | <vector xmlns:android="http://schemas.android.com/apk/res/android" | ||||||
|     android:width="108dp" |     android:width="108dp" | ||||||
|     android:height="108dp" |     android:height="108dp" | ||||||
|     android:viewportWidth="108" |     android:viewportWidth="960" | ||||||
|     android:viewportHeight="108"> |     android:viewportHeight="960"> | ||||||
|     <path |     <path | ||||||
|         android:fillColor="#3DDC84" |         android:fillColor="#FF0187FF" | ||||||
|         android:pathData="M0,0h108v108h-108z" /> |         android:pathData="M0,0h960v960h-960z" /> | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M9,0L9,108" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M19,0L19,108" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M29,0L29,108" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M39,0L39,108" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M49,0L49,108" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M59,0L59,108" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M69,0L69,108" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M79,0L79,108" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M89,0L89,108" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M99,0L99,108" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M0,9L108,9" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M0,19L108,19" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M0,29L108,29" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M0,39L108,39" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M0,49L108,49" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M0,59L108,59" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M0,69L108,69" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M0,79L108,79" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M0,89L108,89" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M0,99L108,99" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M19,29L89,29" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M19,39L89,39" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M19,49L89,49" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M19,59L89,59" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M19,69L89,69" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M19,79L89,79" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M29,19L29,89" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M39,19L39,89" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M49,19L49,89" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M59,19L59,89" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M69,19L69,89" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
|     <path |  | ||||||
|         android:fillColor="#00000000" |  | ||||||
|         android:pathData="M79,19L79,89" |  | ||||||
|         android:strokeWidth="0.8" |  | ||||||
|         android:strokeColor="#33FFFFFF" /> |  | ||||||
| </vector> | </vector> | ||||||
|   | |||||||
							
								
								
									
										13
									
								
								app/src/main/res/drawable/info.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								app/src/main/res/drawable/info.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | |||||||
|  | <vector xmlns:android="http://schemas.android.com/apk/res/android" | ||||||
|  | android:width="24dp" | ||||||
|  | android:height="24dp" | ||||||
|  | android:viewportWidth="960" | ||||||
|  | android:viewportHeight="960"> | ||||||
|  | <path | ||||||
|  |     android:fillColor="?attr/colorOnBackground" | ||||||
|  |     android:pathData="M80,160Q80,127 103.5,103.5Q127,80 160,80L800,80Q833,80 856.5,103.5Q880,127 880,160L880,640Q880,673 856.5,696.5Q833,720 800,720L240,720L80,880ZM206,640L800,640Q800,640 800,640Q800,640 800,640L800,160Q800,160 800,160Q800,160 800,160L160,160Q160,160 160,160Q160,160 160,160L160,685L206,640ZM160,640L160,640L160,160Q160,160 160,160Q160,160 160,160L160,160Q160,160 160,160Q160,160 160,160L160,640Q160,640 160,640Q160,640 160,640L160,640Z" /> | ||||||
|  |  | ||||||
|  | <path | ||||||
|  |     android:fillColor="?attr/colorPrimary" | ||||||
|  |     android:pathData="M480,280Q497,280 508.5,268.5Q520,257 520,240Q520,223 508.5,211.5Q497,200 480,200Q463,200 451.5,211.5Q440,223 440,240Q440,257 451.5,268.5Q463,280 480,280ZM440,600L520,600L520,360L440,360L440,600ZM80,880L80,160" /> | ||||||
|  | </vector> | ||||||
| @@ -6,6 +6,9 @@ | |||||||
|     xmlns:android="http://schemas.android.com/apk/res/android" > |     xmlns:android="http://schemas.android.com/apk/res/android" > | ||||||
|  |  | ||||||
|     <path |     <path | ||||||
|         android:fillColor="?attr/colorPrimary" |         android:fillColor="?attr/colorOnBackground" | ||||||
|         android:pathData="M12,2C6.49,2 2,6.49 2,12s4.49,10 10,10c1.38,0 2.5,-1.12 2.5,-2.5c0,-0.61 -0.23,-1.2 -0.64,-1.67c-0.08,-0.1 -0.13,-0.21 -0.13,-0.33c0,-0.28 0.22,-0.5 0.5,-0.5H16c3.31,0 6,-2.69 6,-6C22,6.04 17.51,2 12,2zM17.5,13c-0.83,0 -1.5,-0.67 -1.5,-1.5c0,-0.83 0.67,-1.5 1.5,-1.5s1.5,0.67 1.5,1.5C19,12.33 18.33,13 17.5,13zM14.5,9C13.67,9 13,8.33 13,7.5C13,6.67 13.67,6 14.5,6S16,6.67 16,7.5C16,8.33 15.33,9 14.5,9zM5,11.5C5,10.67 5.67,10 6.5,10S8,10.67 8,11.5C8,12.33 7.33,13 6.5,13S5,12.33 5,11.5zM11,7.5C11,8.33 10.33,9 9.5,9S8,8.33 8,7.5C8,6.67 8.67,6 9.5,6S11,6.67 11,7.5z" /> |         android:pathData="M12,2C6.49,2 2,6.49 2,12s4.49,10 10,10c1.38,0 2.5,-1.12 2.5,-2.5c0,-0.61 -0.23,-1.2 -0.64,-1.67c-0.08,-0.1 -0.13,-0.21 -0.13,-0.33c0,-0.28 0.22,-0.5 0.5,-0.5H16c3.31,0 6,-2.69 6,-6C22,6.04 17.51,2 12,2zM17.5,13c-0.83,0 -1.5,-0.67 -1.5,-1.5c0,-0.83 0.67,-1.5 1.5,-1.5s1.5,0.67 1.5,1.5C19,12.33 18.33,13 17.5,13zM14.5,9C13.67,9 13,8.33 13,7.5C13,6.67 13.67,6 14.5,6S16,6.67 16,7.5C16,8.33 15.33,9 14.5,9zM5,11.5C5,10.67 5.67,10 6.5,10S8,10.67 8,11.5C8,12.33 7.33,13 6.5,13S5,12.33 5,11.5zM11,7.5C11,8.33 10.33,9 9.5,9S8,8.33 8,7.5C8,6.67 8.67,6 9.5,6S11,6.67 11,7.5z" /> | ||||||
|  |     <path | ||||||
|  |         android:fillColor="?attr/colorPrimary" | ||||||
|  |         android:pathData="M17.5,13c-0.83,0 -1.5,-0.67 -1.5,-1.5c0,-0.83 0.67,-1.5 1.5,-1.5s1.5,0.67 1.5,1.5C19,12.33 18.33,13 17.5,13zM14.5,9C13.67,9 13,8.33 13,7.5C13,6.67 13.67,6 14.5,6S16,6.67 16,7.5C16,8.33 15.33,9 14.5,9zM5,11.5C5,10.67 5.67,10 6.5,10S8,10.67 8,11.5C8,12.33 7.33,13 6.5,13S5,12.33 5,11.5zM11,7.5C11,8.33 10.33,9 9.5,9S8,8.33 8,7.5C8,6.67 8.67,6 9.5,6S11,6.67 11,7.5z" /> | ||||||
| </vector> | </vector> | ||||||
|   | |||||||
							
								
								
									
										68
									
								
								app/src/main/res/layout/fragment_about.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								app/src/main/res/layout/fragment_about.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,68 @@ | |||||||
|  | <?xml version="1.0" encoding="utf-8"?> | ||||||
|  | <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" | ||||||
|  |     xmlns:app="http://schemas.android.com/apk/res-auto" | ||||||
|  |     xmlns:tools="http://schemas.android.com/tools" | ||||||
|  |     android:layout_width="match_parent" | ||||||
|  |     android:layout_height="match_parent" | ||||||
|  |     tools:context=".activity.AboutFragment" > | ||||||
|  |  | ||||||
|  |     <LinearLayout | ||||||
|  |         android:layout_width="match_parent" | ||||||
|  |         android:layout_height="match_parent" | ||||||
|  |         android:gravity="center_horizontal" | ||||||
|  |         android:orientation="vertical" > | ||||||
|  |  | ||||||
|  |         <ImageView | ||||||
|  |             android:layout_width="250dp" | ||||||
|  |             android:layout_height="250dp" | ||||||
|  |             android:layout_marginTop="40dp" | ||||||
|  |             android:layout_marginBottom="30dp" | ||||||
|  |             android:src="@mipmap/ic_launcher_round" /> | ||||||
|  |  | ||||||
|  |         <TextView | ||||||
|  |             android:layout_width="match_parent" | ||||||
|  |             android:layout_height="wrap_content" | ||||||
|  |             android:layout_marginTop="15dp" | ||||||
|  |             android:layout_marginBottom="10dp" | ||||||
|  |             android:layout_marginStart="10dp" | ||||||
|  |             android:layout_marginEnd="10dp" | ||||||
|  |             android:text="@string/app_name" | ||||||
|  |             android:textStyle="bold" | ||||||
|  |             android:textSize="30sp" | ||||||
|  |             android:textAlignment="center" /> | ||||||
|  |  | ||||||
|  |         <TextView | ||||||
|  |             android:layout_width="match_parent" | ||||||
|  |             android:layout_height="wrap_content" | ||||||
|  |             android:layout_marginTop="0dp" | ||||||
|  |             android:layout_marginBottom="15dp" | ||||||
|  |             android:layout_marginStart="10dp" | ||||||
|  |             android:layout_marginEnd="10dp" | ||||||
|  |             android:text="@string/app_version" | ||||||
|  |             android:textSize="25sp" | ||||||
|  |             android:textAlignment="center" /> | ||||||
|  |  | ||||||
|  |         <TextView | ||||||
|  |             android:layout_width="match_parent" | ||||||
|  |             android:layout_height="wrap_content" | ||||||
|  |             android:layout_marginTop="15dp" | ||||||
|  |             android:layout_marginBottom="15dp" | ||||||
|  |             android:layout_marginStart="10dp" | ||||||
|  |             android:layout_marginEnd="10dp" | ||||||
|  |             android:text="@string/beendroid_is_foss" | ||||||
|  |             android:textAlignment="center" /> | ||||||
|  |  | ||||||
|  |         <TextView | ||||||
|  |             android:layout_width="match_parent" | ||||||
|  |             android:layout_height="wrap_content" | ||||||
|  |             android:layout_marginTop="15dp" | ||||||
|  |             android:layout_marginBottom="15dp" | ||||||
|  |             android:layout_marginStart="10dp" | ||||||
|  |             android:layout_marginEnd="10dp" | ||||||
|  |             android:autoLink="web" | ||||||
|  |             android:text="@string/beendroid_repo" | ||||||
|  |             android:textAlignment="center" /> | ||||||
|  |  | ||||||
|  |     </LinearLayout> | ||||||
|  |  | ||||||
|  | </androidx.constraintlayout.widget.ConstraintLayout> | ||||||
							
								
								
									
										15
									
								
								app/src/main/res/layout/fragment_license.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								app/src/main/res/layout/fragment_license.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | |||||||
|  | <?xml version="1.0" encoding="utf-8"?> | ||||||
|  | <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" | ||||||
|  |     xmlns:app="http://schemas.android.com/apk/res-auto" | ||||||
|  |     xmlns:tools="http://schemas.android.com/tools" | ||||||
|  |     android:layout_width="match_parent" | ||||||
|  |     android:layout_height="match_parent" | ||||||
|  |     tools:context=".activity.LicenseFragment" > | ||||||
|  |  | ||||||
|  |     <fragment | ||||||
|  |         android:id="@+id/license_fragment_view" | ||||||
|  |         android:name="androidx.navigation.fragment.NavHostFragment" | ||||||
|  |         android:layout_width="match_parent" | ||||||
|  |         android:layout_height="match_parent"/> | ||||||
|  |  | ||||||
|  | </androidx.constraintlayout.widget.ConstraintLayout> | ||||||
| @@ -2,7 +2,7 @@ | |||||||
|     <style name="Theme.Beendroid" parent="Theme.MaterialComponents.DayNight.DarkActionBar"> |     <style name="Theme.Beendroid" parent="Theme.MaterialComponents.DayNight.DarkActionBar"> | ||||||
|         <item name="colorPrimary">@color/teal_700</item> |         <item name="colorPrimary">@color/teal_700</item> | ||||||
|         <item name="android:colorPrimary">@color/teal_700</item> |         <item name="android:colorPrimary">@color/teal_700</item> | ||||||
|         <item name="android:textColorTertiary">@color/darkgray</item> |         <item name="android:panelColorBackground">@color/darkgray</item> | ||||||
|         <item name="android:statusBarColor">?attr/colorPrimary</item> |         <item name="android:statusBarColor">?attr/colorPrimary</item> | ||||||
|         <item name="colorAccent">?attr/colorPrimary</item> |         <item name="colorAccent">?attr/colorPrimary</item> | ||||||
|     </style> |     </style> | ||||||
|   | |||||||
| @@ -1,12 +1,19 @@ | |||||||
| <?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||||||
| <resources> | <resources> | ||||||
|     <string name="app_name">BeenDroid</string> |     <string name="app_name">BeenDroid</string> | ||||||
|  |     <string name="app_version">1.0</string> | ||||||
|     <string name="action_settings">Settings</string> |     <string name="action_settings">Settings</string> | ||||||
|     <string name="action_edit">Edit</string> |     <string name="action_edit">Edit</string> | ||||||
|     <string name="welcome">Welcome!</string> |     <string name="welcome">Welcome!</string> | ||||||
|     <string name="change_lang">Change language</string> |     <string name="change_lang">Change language</string> | ||||||
|     <string name="key_theme">App theme</string> |     <string name="key_theme">App theme</string> | ||||||
|     <string name="system">Same as system</string> |     <string name="system">System</string> | ||||||
|     <string name="light">Light theme</string> |     <string name="light">Light</string> | ||||||
|     <string name="dark">Dark theme</string> |     <string name="dark">Dark</string> | ||||||
|  |     <string name="licenses">Licenses</string> | ||||||
|  |     <string name="about">About</string> | ||||||
|  |     <string name="beendroid_is_foss">BeenDroid is free and open source software, licensed under the GNU General Public License (version 3 or later)</string> | ||||||
|  |     <string name="beendroid_repo">Project repository: https://git.helcel.net/helcel/beendroid\n Feel free to report issues or contribute to the project.</string> | ||||||
|  |     <string name="foss_licenses">Free and open source dependencies and licenses</string> | ||||||
|  |     <string name="about_beendroid">About the BeenDroid application</string> | ||||||
| </resources> | </resources> | ||||||
| @@ -2,7 +2,7 @@ | |||||||
|     <style name="Theme.Beendroid" parent="Theme.MaterialComponents.DayNight.DarkActionBar"> |     <style name="Theme.Beendroid" parent="Theme.MaterialComponents.DayNight.DarkActionBar"> | ||||||
|         <item name="colorPrimary">@color/teal_700</item> |         <item name="colorPrimary">@color/teal_700</item> | ||||||
|         <item name="android:colorPrimary">@color/teal_700</item> |         <item name="android:colorPrimary">@color/teal_700</item> | ||||||
|         <item name="android:textColorTertiary">@color/lightgray</item> |         <item name="android:panelColorBackground">@color/lightgray</item> | ||||||
|         <item name="android:statusBarColor">?attr/colorPrimary</item> |         <item name="android:statusBarColor">?attr/colorPrimary</item> | ||||||
|         <item name="colorAccent">?attr/colorPrimary</item> |         <item name="colorAccent">?attr/colorPrimary</item> | ||||||
|     </style> |     </style> | ||||||
|   | |||||||
| @@ -13,5 +13,19 @@ | |||||||
|         app:entryValues="@array/entries_theme" |         app:entryValues="@array/entries_theme" | ||||||
|         app:defaultValue="@string/system" /> |         app:defaultValue="@string/system" /> | ||||||
|  |  | ||||||
|  |     <Preference | ||||||
|  |         app:enabled="true" | ||||||
|  |         app:key="@string/licenses" | ||||||
|  |         app:icon="@drawable/checklist" | ||||||
|  |         app:title="@string/licenses" | ||||||
|  |         android:summary="@string/foss_licenses"/> | ||||||
|  |  | ||||||
|  |     <Preference | ||||||
|  |         app:enabled="true" | ||||||
|  |         app:key="@string/about" | ||||||
|  |         app:icon="@drawable/info" | ||||||
|  |         app:title="@string/about" | ||||||
|  |         android:summary="@string/about_beendroid"/> | ||||||
|  |  | ||||||
|  |  | ||||||
| </PreferenceScreen> | </PreferenceScreen> | ||||||
| @@ -14,5 +14,5 @@ dependencyResolutionManagement { | |||||||
|         maven { url 'https://jitpack.io' } |         maven { url 'https://jitpack.io' } | ||||||
|     } |     } | ||||||
| } | } | ||||||
| rootProject.name = "beendroid" | rootProject.name = "BeenDroid" | ||||||
| include ':app' | include ':app' | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user