diff options
author | Torsten Grote <t@grobox.de> | 2022-10-26 10:17:26 -0300 |
---|---|---|
committer | Torsten Grote <t@grobox.de> | 2022-10-26 10:17:26 -0300 |
commit | 2398d0fb201b53b2e41bf9d549b293b6b93e2c45 (patch) | |
tree | a41e25e6d09bd284f07752ef4810ba47585e4b75 /anastasis-ui | |
parent | d08a424f0421e0f8ef0bcdf8a59f3727356a218a (diff) | |
download | taler-android-2398d0fb201b53b2e41bf9d549b293b6b93e2c45.tar.gz taler-android-2398d0fb201b53b2e41bf9d549b293b6b93e2c45.tar.bz2 taler-android-2398d0fb201b53b2e41bf9d549b293b6b93e2c45.zip |
[wallet] Remove old anastasis prototype
Diffstat (limited to 'anastasis-ui')
38 files changed, 0 insertions, 2242 deletions
diff --git a/anastasis-ui/.gitignore b/anastasis-ui/.gitignore deleted file mode 100644 index 42afabf..0000000 --- a/anastasis-ui/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build
\ No newline at end of file diff --git a/anastasis-ui/build.gradle b/anastasis-ui/build.gradle deleted file mode 100644 index 4d30ee5..0000000 --- a/anastasis-ui/build.gradle +++ /dev/null @@ -1,77 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -apply plugin: 'com.android.library' -apply plugin: 'kotlin-android' - -android { - compileSdkVersion 32 - //noinspection GradleDependency - buildToolsVersion "$build_tools_version" - - defaultConfig { - minSdkVersion 21 - targetSdkVersion 32 - - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles "consumer-rules.pro" - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - debug { - minifyEnabled minify_debug - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - } - - compileOptions { - sourceCompatibility = 1.8 - targetCompatibility = 1.8 - } - - kotlinOptions { - jvmTarget = "1.8" - } - - buildFeatures { - viewBinding true - } - - namespace 'org.gnu.anastasis.ui' -} - -dependencies { - implementation project(":taler-kotlin-android") - - implementation "com.google.android.material:material:$material_version" - implementation "androidx.constraintlayout:constraintlayout:$constraintlayout_version" - - // Navigation Library - implementation "androidx.navigation:navigation-fragment-ktx:$nav_version" - implementation "androidx.navigation:navigation-ui-ktx:$nav_version" - - // ViewModel and LiveData - implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version" - - testImplementation "junit:junit:$junit_version" - - androidTestImplementation 'androidx.test.ext:junit:1.1.3' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' -} diff --git a/anastasis-ui/consumer-rules.pro b/anastasis-ui/consumer-rules.pro deleted file mode 100644 index e69de29..0000000 --- a/anastasis-ui/consumer-rules.pro +++ /dev/null diff --git a/anastasis-ui/proguard-rules.pro b/anastasis-ui/proguard-rules.pro deleted file mode 100644 index 481bb43..0000000 --- a/anastasis-ui/proguard-rules.pro +++ /dev/null @@ -1,21 +0,0 @@ -# Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile
\ No newline at end of file diff --git a/anastasis-ui/src/main/AndroidManifest.xml b/anastasis-ui/src/main/AndroidManifest.xml deleted file mode 100644 index 2827271..0000000 --- a/anastasis-ui/src/main/AndroidManifest.xml +++ /dev/null @@ -1,27 +0,0 @@ -<!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<manifest xmlns:android="http://schemas.android.com/apk/res/android"> - - <uses-permission android:name="android.permission.READ_PHONE_STATE" /> - - <application> - <activity - android:name=".MainActivity" - android:theme="@style/AppTheme.NoActionBar" /> - </application> - -</manifest> diff --git a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/IntroFragment.kt b/anastasis-ui/src/main/java/org/gnu/anastasis/ui/IntroFragment.kt deleted file mode 100644 index ef2e190..0000000 --- a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/IntroFragment.kt +++ /dev/null @@ -1,58 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package org.gnu.anastasis.ui - -import android.os.Bundle -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import androidx.fragment.app.Fragment -import androidx.navigation.fragment.findNavController -import org.gnu.anastasis.ui.databinding.FragmentIntroBinding - -class IntroFragment : Fragment() { - - private var _binding: FragmentIntroBinding? = 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 = FragmentIntroBinding.inflate(inflater, container, false) - val view = binding.root - return view - } - - override fun onDestroyView() { - super.onDestroyView() - _binding = null - } - - override fun onViewCreated(view: View, savedInstanceState: Bundle?) { - super.onViewCreated(view, savedInstanceState) - - binding.button.setOnClickListener { - findNavController().navigate(R.id.action_nav_anastasis_intro_to_nav_anastasis_identity) - } - } - - -} diff --git a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/MainActivity.kt b/anastasis-ui/src/main/java/org/gnu/anastasis/ui/MainActivity.kt deleted file mode 100644 index d7870cb..0000000 --- a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/MainActivity.kt +++ /dev/null @@ -1,50 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package org.gnu.anastasis.ui - -import android.os.Bundle -import androidx.appcompat.app.AppCompatActivity -import androidx.navigation.NavController -import androidx.navigation.fragment.NavHostFragment -import androidx.navigation.ui.AppBarConfiguration -import androidx.navigation.ui.setupWithNavController -import org.gnu.anastasis.ui.databinding.ActivityBinding - -internal const val PERMISSION_REQUEST_CODE = 1 - -class MainActivity : AppCompatActivity() { - - private lateinit var nav: NavController - - private lateinit var binding: ActivityBinding - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - setContentView(R.layout.activity) - - val navHostFragment = - supportFragmentManager.findFragmentById(R.id.nav_host_fragment) as NavHostFragment - nav = navHostFragment.navController - - setSupportActionBar(binding.toolbar) - val appBarConfiguration = AppBarConfiguration( - emptySet() - ) - binding.toolbar.setupWithNavController(nav, appBarConfiguration) - } - -} diff --git a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/MainViewModel.kt b/anastasis-ui/src/main/java/org/gnu/anastasis/ui/MainViewModel.kt deleted file mode 100644 index e2bf0c8..0000000 --- a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/MainViewModel.kt +++ /dev/null @@ -1,32 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package org.gnu.anastasis.ui - -import android.app.Application -import androidx.lifecycle.AndroidViewModel -import androidx.lifecycle.MutableLiveData -import org.gnu.anastasis.ui.identity.LOCATIONS - -class MainViewModel(app: Application) : AndroidViewModel(app) { - - val currentCountry = MutableLiveData(LOCATIONS[0]) - - val securityQuestionChecked = MutableLiveData<Boolean>() - val smsChecked = MutableLiveData<Boolean>() - val videoChecked = MutableLiveData<Boolean>() - -} diff --git a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/AuthenticationFragment.kt b/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/AuthenticationFragment.kt deleted file mode 100644 index da947b0..0000000 --- a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/AuthenticationFragment.kt +++ /dev/null @@ -1,134 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package org.gnu.anastasis.ui.authentication - -import android.os.Bundle -import android.view.Gravity.CENTER -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import android.widget.Toast -import android.widget.Toast.LENGTH_SHORT -import androidx.annotation.IdRes -import androidx.fragment.app.Fragment -import androidx.fragment.app.activityViewModels -import androidx.navigation.fragment.FragmentNavigatorExtras -import androidx.navigation.fragment.findNavController -import com.google.android.material.card.MaterialCardView -import net.taler.common.Amount -import org.gnu.anastasis.ui.MainViewModel -import org.gnu.anastasis.ui.R -import org.gnu.anastasis.ui.databinding.FragmentAuthenticationBinding - -class AuthenticationFragment : Fragment() { - - private val viewModel: MainViewModel by activityViewModels() - - private var price: Amount = Amount.zero("KUDOS") - - private var _binding: FragmentAuthenticationBinding? = 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? { - return inflater.inflate(R.layout.fragment_authentication, container, false) - } - - override fun onViewCreated(view: View, savedInstanceState: Bundle?) { - super.onViewCreated(view, savedInstanceState) - binding.passwordCard.setOnClickListener { - showDialog( - R.id.action_nav_anastasis_authentication_to_securityQuestionFragment, - binding.passwordCard, - "question_card" - ) - } - binding.postidentCard.setOnClickListener { - toggleCard( - binding.postidentCard, - Amount.fromJSONString("KUDOS:3.5") - ) - } - binding.smsCard.setOnClickListener { - showDialog( - R.id.action_nav_anastasis_authentication_to_smsFragment, - binding.smsCard, - "sms_card" - ) - } - binding.videoCard.setOnClickListener { - showDialog( - R.id.action_nav_anastasis_authentication_to_videoFragment, - binding.videoCard, - "video_card" - ) - } - - viewModel.securityQuestionChecked.observe(viewLifecycleOwner, { checked -> - binding.passwordCard.isChecked = checked - updatePrice(checked, Amount.fromJSONString("KUDOS:0.5")) - updateNextButtonState() - }) - viewModel.smsChecked.observe(viewLifecycleOwner, { checked -> - binding.smsCard.isChecked = checked - updatePrice(checked, Amount.fromJSONString("KUDOS:1.0")) - updateNextButtonState() - }) - viewModel.videoChecked.observe(viewLifecycleOwner, { checked -> - binding.videoCard.isChecked = checked - updatePrice(checked, Amount.fromJSONString("KUDOS:2.25")) - updateNextButtonState() - }) - } - - private fun showDialog(@IdRes resId: Int, view: View, transitionName: String) { - val extras = FragmentNavigatorExtras(view to transitionName) - findNavController().navigate(resId, null, null, extras) - } - - private fun toggleCard(card: MaterialCardView, price: Amount) { - card.isChecked = !card.isChecked - val text = "Imagine you entered information here" - if (card.isChecked) Toast.makeText(requireContext(), text, LENGTH_SHORT).apply { - setGravity(CENTER, 0, 0) - }.show() - updatePrice(card.isChecked, price) - updateNextButtonState() - } - - private fun updatePrice(add: Boolean, amount: Amount) { - if (add) price += amount - else price -= amount - binding.recoveryCostView.text = "Recovery cost: $price" - } - - private fun updateNextButtonState() { - var numChecked = 0 - numChecked += if (binding.passwordCard.isChecked) 1 else 0 - numChecked += if (binding.postidentCard.isChecked) 1 else 0 - numChecked += if (binding.smsCard.isChecked) 1 else 0 - numChecked += if (binding.videoCard.isChecked) 1 else 0 - binding.nextAuthButton.isEnabled = numChecked >= 2 - } - -} diff --git a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/SecurityQuestionFragment.kt b/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/SecurityQuestionFragment.kt deleted file mode 100644 index 0796610..0000000 --- a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/SecurityQuestionFragment.kt +++ /dev/null @@ -1,60 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package org.gnu.anastasis.ui.authentication - -import android.os.Bundle -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import androidx.fragment.app.Fragment -import androidx.fragment.app.activityViewModels -import androidx.navigation.fragment.findNavController -import org.gnu.anastasis.ui.MainViewModel -import org.gnu.anastasis.ui.databinding.FragmentSecurityQuestionBinding - -class SecurityQuestionFragment : Fragment() { - - private val viewModel: MainViewModel by activityViewModels() - - private var _binding: FragmentSecurityQuestionBinding? = 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 = FragmentSecurityQuestionBinding.inflate(inflater, container, false) - val view = binding.root - return view - } - - override fun onDestroyView() { - super.onDestroyView() - _binding = null - } - - override fun onViewCreated(view: View, savedInstanceState: Bundle?) { - binding.saveQuestionButton.setOnClickListener { - viewModel.securityQuestionChecked.value = true - findNavController().popBackStack() - } - } - -} diff --git a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/SmsFragment.kt b/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/SmsFragment.kt deleted file mode 100644 index a7a1e75..0000000 --- a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/SmsFragment.kt +++ /dev/null @@ -1,118 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package org.gnu.anastasis.ui.authentication - -import android.Manifest -import android.annotation.SuppressLint -import android.content.pm.PackageManager.PERMISSION_GRANTED -import android.os.Bundle -import android.telephony.TelephonyManager -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import androidx.annotation.RequiresPermission -import androidx.core.content.ContextCompat.checkSelfPermission -import androidx.core.content.getSystemService -import androidx.fragment.app.Fragment -import androidx.fragment.app.activityViewModels -import androidx.navigation.fragment.findNavController -import com.google.android.material.transition.MaterialContainerTransform -import com.google.android.material.transition.MaterialContainerTransform.FADE_MODE_CROSS -import org.gnu.anastasis.ui.MainViewModel -import org.gnu.anastasis.ui.PERMISSION_REQUEST_CODE -import org.gnu.anastasis.ui.R -import org.gnu.anastasis.ui.databinding.FragmentSmsBinding - -private const val PERMISSION = Manifest.permission.READ_PHONE_STATE - -class SmsFragment : Fragment() { - - private val viewModel: MainViewModel by activityViewModels() - - private var _binding: FragmentSmsBinding? = 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 = FragmentSmsBinding.inflate(inflater, container, false) - sharedElementEnterTransition = MaterialContainerTransform().apply { - fadeMode = FADE_MODE_CROSS - } - return inflater.inflate(R.layout.fragment_sms, container, false).apply { - transitionName = "sms_card" - } - } - - override fun onDestroyView() { - super.onDestroyView() - _binding = null - } - - override fun onViewCreated(view: View, savedInstanceState: Bundle?) { - binding.smsView.editText?.setOnFocusChangeListener { _, hasFocus -> - if (hasFocus) checkPerm() - } - binding.saveSmsButton.setOnClickListener { - viewModel.smsChecked.value = true - findNavController().popBackStack() - } - } - - private fun checkPerm() = when { - checkSelfPermission(requireContext(), PERMISSION) == PERMISSION_GRANTED -> { - // You can use the API that requires the permission. - fillPhoneNumber() - } - shouldShowRequestPermissionRationale(PERMISSION) -> { - // In an educational UI, explain to the user why your app requires this - // permission for a specific feature to behave as expected. In this UI, - // include a "cancel" or "no thanks" button that allows the user to - // continue using your app without granting the permission. - } - else -> { - // You can directly ask for the permission. - requestPermissions(arrayOf(PERMISSION), PERMISSION_REQUEST_CODE) - } - } - - @Deprecated("Deprecated in Java") - override fun onRequestPermissionsResult( - requestCode: Int, - permissions: Array<String>, - grantResults: IntArray, - ) { - if (requestCode == PERMISSION_REQUEST_CODE && grantResults.isNotEmpty() && - grantResults[0] == PERMISSION_GRANTED - ) checkPerm() - } - - @SuppressLint("HardwareIds") - @RequiresPermission(PERMISSION) - private fun fillPhoneNumber() { - val telephonyService = requireContext().getSystemService<TelephonyManager>() - telephonyService?.line1Number?.let { phoneNumber -> - binding.smsView.editText?.setText(phoneNumber) - binding.smsView.editText?.setSelection(phoneNumber.length) - } - } - -} diff --git a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/VideoFragment.kt b/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/VideoFragment.kt deleted file mode 100644 index 4e83736..0000000 --- a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/authentication/VideoFragment.kt +++ /dev/null @@ -1,135 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package org.gnu.anastasis.ui.authentication - -import android.app.Activity.RESULT_OK -import android.content.Intent -import android.graphics.Bitmap -import android.graphics.BitmapFactory -import android.net.Uri -import android.os.Bundle -import android.os.ParcelFileDescriptor -import android.provider.MediaStore -import android.view.LayoutInflater -import android.view.View -import android.view.View.GONE -import android.view.View.VISIBLE -import android.view.ViewGroup -import androidx.fragment.app.Fragment -import androidx.fragment.app.activityViewModels -import androidx.navigation.fragment.findNavController -import androidx.transition.TransitionManager.beginDelayedTransition -import com.google.android.material.transition.MaterialContainerTransform -import com.google.android.material.transition.MaterialContainerTransform.FADE_MODE_CROSS -import org.gnu.anastasis.ui.MainViewModel -import org.gnu.anastasis.ui.R -import org.gnu.anastasis.ui.databinding.FragmentVideoBinding -import java.io.FileDescriptor - -private const val REQUEST_IMAGE_CAPTURE = 1 -private const val REQUEST_IMAGE_OPEN = 2 - -class VideoFragment : Fragment() { - - private val viewModel: MainViewModel by activityViewModels() - - private var _binding: FragmentVideoBinding? = 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 = FragmentVideoBinding.inflate(inflater, container, false) - sharedElementEnterTransition = MaterialContainerTransform().apply { - fadeMode = FADE_MODE_CROSS - } - return inflater.inflate(R.layout.fragment_video, container, false).apply { - transitionName = "video_card" - } - } - - override fun onDestroyView() { - super.onDestroyView() - _binding = null - } - - override fun onViewCreated(view: View, savedInstanceState: Bundle?) { - binding.takePhotoButton.setOnClickListener { - val pm = requireContext().packageManager - Intent(MediaStore.ACTION_IMAGE_CAPTURE).also { takePictureIntent -> - takePictureIntent.resolveActivity(pm)?.also { - startActivityForResult(takePictureIntent, - REQUEST_IMAGE_CAPTURE - ) - } - } - } - binding.choosePhotoButton.setOnClickListener { - val intent = Intent(Intent.ACTION_OPEN_DOCUMENT).apply { - addCategory(Intent.CATEGORY_OPENABLE) - type = "image/*" - } - startActivityForResult(intent, - REQUEST_IMAGE_OPEN - ) - } - - binding.saveVideoButton.setOnClickListener { - viewModel.videoChecked.value = true - findNavController().popBackStack() - } - } - - @Deprecated("Deprecated in Java") - override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { - if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) { - val imageBitmap = data!!.extras!!.get("data") as Bitmap - showImage(imageBitmap) - } else if (requestCode == REQUEST_IMAGE_OPEN && resultCode == RESULT_OK) { - data?.data?.also { uri -> - val imageBitmap = getBitmapFromUri(uri) - showImage(imageBitmap) - } - } - } - - private fun showImage(bitmap: Bitmap) { - with (binding) { - photoView.setImageBitmap(bitmap) - beginDelayedTransition(view as ViewGroup) - photoView.visibility = VISIBLE - takePhotoButton.visibility = GONE - choosePhotoButton.visibility = GONE - saveVideoButton.isEnabled = true - } - } - - private fun getBitmapFromUri(uri: Uri): Bitmap { - val contentResolver = requireContext().contentResolver - val parcelFileDescriptor: ParcelFileDescriptor = - contentResolver.openFileDescriptor(uri, "r")!! - val fileDescriptor: FileDescriptor = parcelFileDescriptor.fileDescriptor - val image: Bitmap = BitmapFactory.decodeFileDescriptor(fileDescriptor) - parcelFileDescriptor.close() - return image - } - -} diff --git a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/identity/ChangeLocationFragment.kt b/anastasis-ui/src/main/java/org/gnu/anastasis/ui/identity/ChangeLocationFragment.kt deleted file mode 100644 index 00eec11..0000000 --- a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/identity/ChangeLocationFragment.kt +++ /dev/null @@ -1,68 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package org.gnu.anastasis.ui.identity - -import android.os.Bundle -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import androidx.fragment.app.Fragment -import androidx.fragment.app.activityViewModels -import androidx.navigation.fragment.findNavController -import org.gnu.anastasis.ui.MainViewModel -import org.gnu.anastasis.ui.R -import org.gnu.anastasis.ui.databinding.FragmentChangeLocationBinding - -class ChangeLocationFragment : Fragment() { - - private val viewModel: MainViewModel by activityViewModels() - - private var _binding: FragmentChangeLocationBinding? = 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? { - return inflater.inflate(R.layout.fragment_change_location, container, false) - } - - override fun onViewCreated(view: View, savedInstanceState: Bundle?) { - super.onViewCreated(view, savedInstanceState) - binding.switzerlandView.setOnClickListener { - changeCountry(LOCATIONS[0]) - } - binding.germanyView.setOnClickListener { - changeCountry(LOCATIONS[1]) - } - binding.usaView.setOnClickListener { - changeCountry(LOCATIONS[2]) - } - binding.indiaView.setOnClickListener { - changeCountry(LOCATIONS[3]) - } - } - - private fun changeCountry(location: Location) { - viewModel.currentCountry.value = location - findNavController().popBackStack() - } - -} diff --git a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/identity/IdentityFragment.kt b/anastasis-ui/src/main/java/org/gnu/anastasis/ui/identity/IdentityFragment.kt deleted file mode 100644 index 73ae629..0000000 --- a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/identity/IdentityFragment.kt +++ /dev/null @@ -1,124 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package org.gnu.anastasis.ui.identity - -import android.annotation.SuppressLint -import android.app.DatePickerDialog -import android.os.Build.VERSION.SDK_INT -import android.os.Bundle -import android.telephony.TelephonyManager -import android.text.format.DateFormat.getDateFormat -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import android.widget.Toast -import android.widget.Toast.LENGTH_LONG -import androidx.core.content.getSystemService -import androidx.fragment.app.Fragment -import androidx.fragment.app.activityViewModels -import androidx.navigation.fragment.findNavController -import org.gnu.anastasis.ui.MainViewModel -import org.gnu.anastasis.ui.R -import org.gnu.anastasis.ui.databinding.FragmentIdentityBinding -import java.util.Calendar -import java.util.Date -import java.util.Locale -import java.util.concurrent.TimeUnit.DAYS - -private const val MIN_AGE = 18 - -class AnastasisIdentityFragment : Fragment() { - - private val model: MainViewModel by activityViewModels() - - private var _binding: FragmentIdentityBinding? = 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 = FragmentIdentityBinding.inflate(inflater, container, false) - val view = binding.root - return view - } - - override fun onDestroyView() { - super.onDestroyView() - _binding = null - } - - override fun onViewCreated(view: View, savedInstanceState: Bundle?) { - super.onViewCreated(view, savedInstanceState) - - model.currentCountry.observe(viewLifecycleOwner, { country -> - binding.countryView.text = country.name - if (binding.stub != null) { - binding.stub.layoutResource = country.layoutRes - binding.stub.inflate() - } - }) - binding.changeCountryView.setOnClickListener { - findNavController().navigate(R.id.action_nav_anastasis_identity_to_nav_change_location) - } - binding.birthDateInput.editText?.setOnClickListener { - if (SDK_INT >= 24) { - val picker = DatePickerDialog(requireContext()) - picker.datePicker.maxDate = - System.currentTimeMillis() - DAYS.toMillis(365) * MIN_AGE - picker.setOnDateSetListener { _, year, month, dayOfMonth -> - val calender = Calendar.getInstance().apply { - set(year, month, dayOfMonth) - } - val date = Date(calender.timeInMillis) - val dateStr = getDateFormat(requireContext()).format(date) - binding.birthDateInput.editText?.setText(dateStr) - } - picker.show() - } else { - Toast.makeText(requireContext(), "Needs newer phone", LENGTH_LONG).show() - } - } - binding.createIdentifierButton.setOnClickListener { - findNavController().navigate(R.id.action_nav_anastasis_intro_to_nav_anastasis_authentication) - } - } - - @Suppress("unused") - private fun getCountryName(): String { - val tm = requireContext().getSystemService<TelephonyManager>()!! - val countryIso = if (tm.networkCountryIso.isNullOrEmpty()) { - if (tm.simCountryIso.isNullOrEmpty()) { - if (Locale.getDefault().country.isNullOrEmpty()) "unknown" - else Locale.getDefault().country - } else tm.simCountryIso - } else tm.networkCountryIso - var countryName = countryIso - for (locale in Locale.getAvailableLocales()) { - @SuppressLint("DefaultLocale") - if (locale.country.toLowerCase() == countryIso) { - countryName = locale.displayCountry - break - } - } - return countryName - } - -} diff --git a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/identity/Locations.kt b/anastasis-ui/src/main/java/org/gnu/anastasis/ui/identity/Locations.kt deleted file mode 100644 index 13658d2..0000000 --- a/anastasis-ui/src/main/java/org/gnu/anastasis/ui/identity/Locations.kt +++ /dev/null @@ -1,29 +0,0 @@ -/* - * This file is part of GNU Taler - * (C) 2020 Taler Systems S.A. - * - * GNU Taler is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 3, or (at your option) any later version. - * - * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - */ - -package org.gnu.anastasis.ui.identity - -import androidx.annotation.LayoutRes -import org.gnu.anastasis.ui.R - -data class Location(val name: String, @LayoutRes val layoutRes: Int) - -val LOCATIONS = listOf( - Location("Switzerland", R.layout.country_switzerland), - Location("Germany", R.layout.country_germany), - Location("Unites States", R.layout.country_usa), - Location("India", R.layout.country_india) -) diff --git a/anastasis-ui/src/main/res/anim/slide_in_right.xml b/anastasis-ui/src/main/res/anim/slide_in_right.xml deleted file mode 100644 index 1425210..0000000 --- a/anastasis-ui/src/main/res/anim/slide_in_right.xml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<set xmlns:android="http://schemas.android.com/apk/res/android"> - <translate android:fromXDelta="75%p" android:toXDelta="0" - android:duration="@android:integer/config_mediumAnimTime"/> - <alpha android:fromAlpha="0.0" android:toAlpha="1.0" - android:duration="@android:integer/config_mediumAnimTime" /> -</set> diff --git a/anastasis-ui/src/main/res/anim/slide_out_left.xml b/anastasis-ui/src/main/res/anim/slide_out_left.xml deleted file mode 100644 index 0581b69..0000000 --- a/anastasis-ui/src/main/res/anim/slide_out_left.xml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<set xmlns:android="http://schemas.android.com/apk/res/android"> - <translate android:fromXDelta="0" android:toXDelta="-75%p" - android:duration="@android:integer/config_mediumAnimTime"/> - <alpha android:fromAlpha="1.0" android:toAlpha="0.0" - android:duration="@android:integer/config_mediumAnimTime" /> -</set> diff --git a/anastasis-ui/src/main/res/drawable/ic_add_circle.xml b/anastasis-ui/src/main/res/drawable/ic_add_circle.xml deleted file mode 100644 index 76e1fcb..0000000 --- a/anastasis-ui/src/main/res/drawable/ic_add_circle.xml +++ /dev/null @@ -1,10 +0,0 @@ -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:tint="?attr/colorControlNormal" - android:viewportWidth="24" - android:viewportHeight="24"> - <path - android:fillColor="@android:color/white" - android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM17,13h-4v4h-2v-4L7,13v-2h4L11,7h2v4h4v2z" /> -</vector> diff --git a/anastasis-ui/src/main/res/drawable/ic_baseline_check.xml b/anastasis-ui/src/main/res/drawable/ic_baseline_check.xml deleted file mode 100644 index 219e80e..0000000 --- a/anastasis-ui/src/main/res/drawable/ic_baseline_check.xml +++ /dev/null @@ -1,10 +0,0 @@ -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:tint="?attr/colorControlNormal" - android:viewportWidth="24" - android:viewportHeight="24"> - <path - android:fillColor="@android:color/white" - android:pathData="M9,16.17L4.83,12l-1.42,1.41L9,19 21,7l-1.41,-1.41z" /> -</vector> diff --git a/anastasis-ui/src/main/res/drawable/ic_baseline_cloud_circle.xml b/anastasis-ui/src/main/res/drawable/ic_baseline_cloud_circle.xml deleted file mode 100644 index bb8e80a..0000000 --- a/anastasis-ui/src/main/res/drawable/ic_baseline_cloud_circle.xml +++ /dev/null @@ -1,10 +0,0 @@ -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:tint="?attr/colorControlNormal" - android:viewportWidth="24" - android:viewportHeight="24"> - <path - android:fillColor="@android:color/white" - android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM16.5,16L8,16c-1.66,0 -3,-1.34 -3,-3s1.34,-3 3,-3l0.14,0.01C8.58,8.28 10.13,7 12,7c2.21,0 4,1.79 4,4h0.5c1.38,0 2.5,1.12 2.5,2.5S17.88,16 16.5,16z" /> -</vector> diff --git a/anastasis-ui/src/main/res/drawable/ic_baseline_cloud_download.xml b/anastasis-ui/src/main/res/drawable/ic_baseline_cloud_download.xml deleted file mode 100644 index 58832b1..0000000 --- a/anastasis-ui/src/main/res/drawable/ic_baseline_cloud_download.xml +++ /dev/null @@ -1,10 +0,0 @@ -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:tint="?attr/colorControlNormal" - android:viewportWidth="24" - android:viewportHeight="24"> - <path - android:fillColor="@android:color/white" - android:pathData="M19.35,10.04C18.67,6.59 15.64,4 12,4 9.11,4 6.6,5.64 5.35,8.04 2.34,8.36 0,10.91 0,14c0,3.31 2.69,6 6,6h13c2.76,0 5,-2.24 5,-5 0,-2.64 -2.05,-4.78 -4.65,-4.96zM17,13l-5,5 -5,-5h3V9h4v4h3z" /> -</vector> diff --git a/anastasis-ui/src/main/res/drawable/ic_baseline_face.xml b/anastasis-ui/src/main/res/drawable/ic_baseline_face.xml deleted file mode 100644 index 4d55e34..0000000 --- a/anastasis-ui/src/main/res/drawable/ic_baseline_face.xml +++ /dev/null @@ -1,26 +0,0 @@ -<!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:viewportWidth="24" - android:viewportHeight="24" - android:tint="?attr/colorControlNormal"> - <path - android:fillColor="@android:color/white" - android:pathData="M9,11.75c-0.69,0 -1.25,0.56 -1.25,1.25s0.56,1.25 1.25,1.25 1.25,-0.56 1.25,-1.25 -0.56,-1.25 -1.25,-1.25zM15,11.75c-0.69,0 -1.25,0.56 -1.25,1.25s0.56,1.25 1.25,1.25 1.25,-0.56 1.25,-1.25 -0.56,-1.25 -1.25,-1.25zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8 0,-0.29 0.02,-0.58 0.05,-0.86 2.36,-1.05 4.23,-2.98 5.21,-5.37C11.07,8.33 14.05,10 17.42,10c0.78,0 1.53,-0.09 2.25,-0.26 0.21,0.71 0.33,1.47 0.33,2.26 0,4.41 -3.59,8 -8,8z"/> -</vector> diff --git a/anastasis-ui/src/main/res/drawable/ic_baseline_lock.xml b/anastasis-ui/src/main/res/drawable/ic_baseline_lock.xml deleted file mode 100644 index 8f13e37..0000000 --- a/anastasis-ui/src/main/res/drawable/ic_baseline_lock.xml +++ /dev/null @@ -1,10 +0,0 @@ -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:tint="?attr/colorControlNormal" - android:viewportWidth="24" - android:viewportHeight="24"> - <path - android:fillColor="@android:color/white" - android:pathData="M18,8h-1L17,6c0,-2.76 -2.24,-5 -5,-5S7,3.24 7,6v2L6,8c-1.1,0 -2,0.9 -2,2v10c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L20,10c0,-1.1 -0.9,-2 -2,-2zM12,17c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2zM15.1,8L8.9,8L8.9,6c0,-1.71 1.39,-3.1 3.1,-3.1 1.71,0 3.1,1.39 3.1,3.1v2z" /> -</vector> diff --git a/anastasis-ui/src/main/res/drawable/ic_baseline_person.xml b/anastasis-ui/src/main/res/drawable/ic_baseline_person.xml deleted file mode 100644 index 07eeb5a..0000000 --- a/anastasis-ui/src/main/res/drawable/ic_baseline_person.xml +++ /dev/null @@ -1,10 +0,0 @@ -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:tint="?attr/colorControlNormal" - android:viewportWidth="24" - android:viewportHeight="24"> - <path - android:fillColor="@android:color/white" - android:pathData="M12,12c2.21,0 4,-1.79 4,-4s-1.79,-4 -4,-4 -4,1.79 -4,4 1.79,4 4,4zM12,14c-2.67,0 -8,1.34 -8,4v2h16v-2c0,-2.66 -5.33,-4 -8,-4z" /> -</vector> diff --git a/anastasis-ui/src/main/res/layout/activity.xml b/anastasis-ui/src/main/res/layout/activity.xml deleted file mode 100644 index 02fe90c..0000000 --- a/anastasis-ui/src/main/res/layout/activity.xml +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<androidx.coordinatorlayout.widget.CoordinatorLayout 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=".MainActivity"> - - <com.google.android.material.appbar.AppBarLayout - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:theme="@style/AppTheme.AppBarOverlay"> - - <com.google.android.material.appbar.MaterialToolbar - android:id="@+id/toolbar" - style="@style/AppTheme.Toolbar" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - </com.google.android.material.appbar.AppBarLayout> - - <androidx.fragment.app.FragmentContainerView - android:id="@+id/nav_host_fragment" - android:name="androidx.navigation.fragment.NavHostFragment" - android:layout_width="match_parent" - android:layout_height="match_parent" - app:defaultNavHost="true" - app:layout_behavior="@string/appbar_scrolling_view_behavior" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintLeft_toLeftOf="parent" - app:layout_constraintRight_toRightOf="parent" - app:layout_constraintTop_toTopOf="parent" - app:navGraph="@navigation/anastasis" /> - -</androidx.coordinatorlayout.widget.CoordinatorLayout> diff --git a/anastasis-ui/src/main/res/layout/country_germany.xml b/anastasis-ui/src/main/res/layout/country_germany.xml deleted file mode 100644 index 5b54843..0000000 --- a/anastasis-ui/src/main/res/layout/country_germany.xml +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:padding="16dp" - android:orientation="vertical"> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/idNumberInput" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="Passport number" - android:inputType="number" - android:maxLength="13" /> - - </com.google.android.material.textfield.TextInputLayout> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/taxIdInput" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginTop="16dp"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="Krankenversicherungsnummer" - android:inputType="number" - android:maxLength="13" /> - - </com.google.android.material.textfield.TextInputLayout> - -</LinearLayout> diff --git a/anastasis-ui/src/main/res/layout/country_india.xml b/anastasis-ui/src/main/res/layout/country_india.xml deleted file mode 100644 index a12616e..0000000 --- a/anastasis-ui/src/main/res/layout/country_india.xml +++ /dev/null @@ -1,38 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:orientation="vertical"> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/idNumberInput" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_margin="16dp"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="Aadhaar number" - android:inputType="number" - android:maxLength="13" /> - - </com.google.android.material.textfield.TextInputLayout> - -</LinearLayout> diff --git a/anastasis-ui/src/main/res/layout/country_switzerland.xml b/anastasis-ui/src/main/res/layout/country_switzerland.xml deleted file mode 100644 index 0fc71fc..0000000 --- a/anastasis-ui/src/main/res/layout/country_switzerland.xml +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:padding="16dp" - android:orientation="vertical"> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/idNumberInput" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="AHV number" - android:inputType="number" - android:maxLength="13" /> - - </com.google.android.material.textfield.TextInputLayout> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/taxIdInput" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginTop="16dp"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="Krankenversicherungsnummer" - android:inputType="number" - android:maxLength="13" /> - - </com.google.android.material.textfield.TextInputLayout> - -</LinearLayout> diff --git a/anastasis-ui/src/main/res/layout/country_usa.xml b/anastasis-ui/src/main/res/layout/country_usa.xml deleted file mode 100644 index f9762e6..0000000 --- a/anastasis-ui/src/main/res/layout/country_usa.xml +++ /dev/null @@ -1,38 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:orientation="vertical"> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/idNumberInput" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_margin="16dp"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="Social security number" - android:inputType="number" - android:maxLength="13" /> - - </com.google.android.material.textfield.TextInputLayout> - -</LinearLayout> diff --git a/anastasis-ui/src/main/res/layout/fragment_authentication.xml b/anastasis-ui/src/main/res/layout/fragment_authentication.xml deleted file mode 100644 index a83871a..0000000 --- a/anastasis-ui/src/main/res/layout/fragment_authentication.xml +++ /dev/null @@ -1,275 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:app="http://schemas.android.com/apk/res-auto" - android:layout_width="match_parent" - android:layout_height="match_parent"> - - <ScrollView - android:layout_width="match_parent" - android:layout_height="0dp" - app:layout_constraintBottom_toTopOf="@+id/bottomCard" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent"> - - <LinearLayout - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:orientation="vertical"> - - <com.google.android.material.card.MaterialCardView - android:id="@+id/passwordCard" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginStart="16dp" - android:layout_marginTop="16dp" - android:layout_marginEnd="16dp" - android:checkable="true" - android:clickable="true" - android:focusable="true" - android:transitionName="question_card" - app:cardElevation="4dp" - app:cardUseCompatPadding="true" - app:checkedIcon="@drawable/ic_baseline_check" - app:checkedIconTint="@color/green" - app:contentPadding="8dp"> - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <TextView - android:id="@+id/passwordHeadline" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:text="Security question" - android:textAppearance="@style/TextAppearance.MaterialComponents.Headline5" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - <TextView - android:id="@+id/passwordText" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginTop="8dp" - android:text="Provide your own security question (and answer) that you will need to answer to authenticate when recovering your backup." - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/passwordHeadline" /> - </androidx.constraintlayout.widget.ConstraintLayout> - - </com.google.android.material.card.MaterialCardView> - - <com.google.android.material.circularreveal.cardview.CircularRevealCardView - android:id="@+id/postidentCard" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginStart="16dp" - android:layout_marginTop="16dp" - android:layout_marginEnd="16dp" - android:checkable="true" - app:cardElevation="4dp" - app:cardUseCompatPadding="true" - app:checkedIcon="@drawable/ic_baseline_check" - app:checkedIconTint="@color/green" - app:contentPadding="8dp"> - - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <TextView - android:id="@+id/postidentHeadline" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:text="Identification by mail" - android:textAppearance="@style/TextAppearance.MaterialComponents.Headline5" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - <TextView - android:id="@+id/postidentText" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginTop="8dp" - android:text="Die Postident-Verfahren sind Methoden der persönlichen Identifikation von Personen, die durch die Mitarbeiter der Post vorgenommen werden. Man spricht beim Postident-Verfahren auch von einer unpersönlichen Legitimationsprüfung. " - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/postidentHeadline" /> - </androidx.constraintlayout.widget.ConstraintLayout> - </com.google.android.material.circularreveal.cardview.CircularRevealCardView> - - - <com.google.android.material.card.MaterialCardView - android:id="@+id/smsCard" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginStart="16dp" - android:layout_marginTop="16dp" - android:layout_marginEnd="16dp" - android:checkable="true" - android:clickable="true" - android:focusable="true" - android:transitionName="sms_card" - app:cardElevation="4dp" - app:cardUseCompatPadding="true" - app:checkedIcon="@drawable/ic_baseline_check" - app:checkedIconTint="@color/green" - app:contentPadding="8dp"> - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <TextView - android:id="@+id/smsHeadline" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:text="SMS" - android:textAppearance="@style/TextAppearance.MaterialComponents.Headline5" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - <TextView - android:id="@+id/smsText" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginTop="8dp" - android:text="Sends an SMS with a code to the users phone. The must send this code back with his request. If the transmitted code is correct, the server responses with the requested encrypted key share." - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/smsHeadline" /> - </androidx.constraintlayout.widget.ConstraintLayout> - - </com.google.android.material.card.MaterialCardView> - - <com.google.android.material.card.MaterialCardView - android:id="@+id/videoCard" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:checkable="true" - android:clickable="true" - android:focusable="true" - android:transitionName="video_card" - app:cardElevation="4dp" - app:cardUseCompatPadding="true" - app:checkedIcon="@drawable/ic_baseline_check" - app:checkedIconTint="@color/green" - app:contentPadding="8dp"> - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <TextView - android:id="@+id/videoHeadline" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:text="Video identification" - android:textAppearance="@style/TextAppearance.MaterialComponents.Headline5" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - <TextView - android:id="@+id/videoText" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginTop="8dp" - android:text="Requires the user to identify via video-call. The user is expected to delete all metadata revealing information about him/her from the images before uploading them. Since the respective images must be passed on to the video identification service in the event of password recovery, it must be ensured that no further information about the user can be derived from them." - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/videoHeadline" /> - </androidx.constraintlayout.widget.ConstraintLayout> - - </com.google.android.material.card.MaterialCardView> - - </LinearLayout> - - </ScrollView> - - <com.google.android.material.card.MaterialCardView - android:id="@+id/bottomCard" - android:layout_width="0dp" - android:layout_height="wrap_content" - app:cardCornerRadius="0dp" - app:cardElevation="6dp" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent"> - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <Button - android:id="@+id/nextAuthButton" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginEnd="16dp" - android:backgroundTint="@color/green" - android:enabled="false" - android:text="Next" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - <TextView - android:id="@+id/annualCostView" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginStart="16dp" - android:layout_marginTop="8dp" - android:layout_marginEnd="8dp" - android:layout_marginBottom="8dp" - android:text="Annual cost: 5 KUDOS" - app:layout_constraintBottom_toTopOf="@+id/recoveryCostView" - app:layout_constraintEnd_toStartOf="@+id/nextAuthButton" - app:layout_constraintHorizontal_bias="0.5" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintVertical_chainStyle="spread" /> - - <TextView - android:id="@+id/recoveryCostView" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginStart="16dp" - android:layout_marginEnd="8dp" - android:layout_marginBottom="8dp" - android:text="Recovery cost: 0 KUDOS" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toStartOf="@+id/nextAuthButton" - app:layout_constraintHorizontal_bias="0.5" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/annualCostView" /> - - </androidx.constraintlayout.widget.ConstraintLayout> - - </com.google.android.material.card.MaterialCardView> - -</androidx.constraintlayout.widget.ConstraintLayout> diff --git a/anastasis-ui/src/main/res/layout/fragment_change_location.xml b/anastasis-ui/src/main/res/layout/fragment_change_location.xml deleted file mode 100644 index 93c919f..0000000 --- a/anastasis-ui/src/main/res/layout/fragment_change_location.xml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:app="http://schemas.android.com/apk/res-auto" - android:layout_width="match_parent" - android:layout_height="match_parent"> - - <TextView - android:id="@+id/usaView" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginTop="16dp" - android:background="?selectableItemBackground" - android:padding="16dp" - android:text="United States" - android:textAppearance="@style/TextAppearance.AppCompat.Medium" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - - <TextView - android:id="@+id/germanyView" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginTop="16dp" - android:background="?selectableItemBackground" - android:padding="16dp" - android:text="Germany" - android:textAppearance="@style/TextAppearance.AppCompat.Medium" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/usaView" /> - - <TextView - android:id="@+id/switzerlandView" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginTop="16dp" - android:background="?selectableItemBackground" - android:padding="16dp" - android:text="Switzerland" - android:textAppearance="@style/TextAppearance.AppCompat.Medium" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/germanyView" /> - - <TextView - android:id="@+id/indiaView" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginTop="16dp" - android:background="?selectableItemBackground" - android:padding="16dp" - android:text="India" - android:textAppearance="@style/TextAppearance.AppCompat.Medium" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/switzerlandView" /> - -</androidx.constraintlayout.widget.ConstraintLayout> diff --git a/anastasis-ui/src/main/res/layout/fragment_identity.xml b/anastasis-ui/src/main/res/layout/fragment_identity.xml deleted file mode 100644 index 4a48d32..0000000 --- a/anastasis-ui/src/main/res/layout/fragment_identity.xml +++ /dev/null @@ -1,157 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<ScrollView 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" - android:fillViewport="true"> - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <ImageView - android:id="@+id/imageView2" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_margin="16dp" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" - app:srcCompat="@drawable/ic_baseline_person" - tools:ignore="ContentDescription" /> - - <TextView - android:id="@+id/identityIntro" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:layout_marginTop="24dp" - android:text="To find your secret later, we create an anonymous identifier from unforgettable information about you.\n\nThis information will not be stored and not shared with anybody.\n\nFeel free to lie as long as you will be able to provide exactly the same information when needing to restore." - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toEndOf="@+id/imageView2" - app:layout_constraintTop_toTopOf="parent" /> - - <TextView - android:id="@+id/textView3" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:text="Country:" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/identityIntro" /> - - <TextView - android:id="@+id/countryView" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginStart="8dp" - android:text="Unknown" - app:layout_constraintBaseline_toBaselineOf="@+id/textView3" - app:layout_constraintStart_toEndOf="@+id/textView3" /> - - <TextView - android:id="@+id/changeCountryView" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginStart="8dp" - android:text="Change" - android:textColor="?attr/colorAccent" - app:layout_constraintBaseline_toBaselineOf="@+id/countryView" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintHorizontal_bias="0.0" - app:layout_constraintStart_toEndOf="@+id/countryView" /> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/nameInput" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_margin="16dp" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/textView3"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="Name" - android:inputType="textPersonName|textCapWords" /> - - </com.google.android.material.textfield.TextInputLayout> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/placeOfBirthInput" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_margin="16dp" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/nameInput"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="Place of birth" - android:inputType="text|textCapWords" /> - - </com.google.android.material.textfield.TextInputLayout> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/birthDateInput" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_margin="16dp" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/placeOfBirthInput"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:focusable="false" - android:hint="Birthday" - android:inputType="date" /> - - </com.google.android.material.textfield.TextInputLayout> - - <ViewStub - android:id="@+id/stub" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout="@layout/country_switzerland" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/birthDateInput" /> - - <Button - android:id="@+id/createIdentifierButton" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:backgroundTint="@color/green" - android:drawableStart="@drawable/ic_baseline_lock" - android:text="Encrypt Identity" - app:drawableTint="?attr/colorOnPrimarySurface" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" /> - - </androidx.constraintlayout.widget.ConstraintLayout> - -</ScrollView> diff --git a/anastasis-ui/src/main/res/layout/fragment_intro.xml b/anastasis-ui/src/main/res/layout/fragment_intro.xml deleted file mode 100644 index 04e5d60..0000000 --- a/anastasis-ui/src/main/res/layout/fragment_intro.xml +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<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"> - - <ImageView - android:id="@+id/imageView" - android:layout_width="0dp" - android:layout_height="0dp" - android:layout_margin="16dp" - app:layout_constraintBottom_toTopOf="@+id/textView" - app:layout_constraintDimensionRatio="1:1" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintHeight_max="200dp" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintVertical_bias="1.0" - app:layout_constraintVertical_chainStyle="spread" - app:srcCompat="@drawable/ic_baseline_cloud_circle" - app:tint="@color/green" - tools:ignore="ContentDescription" /> - - <TextView - android:id="@+id/textView" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:text="Secure cloud recovery keeps your backup secret safe with service providers of your choice.\n\nTo access your backup, you need to identify yourself to some or all of those providers, so they unlock your backup." - android:textSize="22sp" - app:layout_constraintBottom_toTopOf="@+id/button" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/imageView" /> - - <Button - android:id="@+id/button" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:backgroundTint="@color/green" - android:text="Setup cloud recovery" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" /> - -</androidx.constraintlayout.widget.ConstraintLayout> diff --git a/anastasis-ui/src/main/res/layout/fragment_security_question.xml b/anastasis-ui/src/main/res/layout/fragment_security_question.xml deleted file mode 100644 index 5a7c41f..0000000 --- a/anastasis-ui/src/main/res/layout/fragment_security_question.xml +++ /dev/null @@ -1,102 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<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"> - - <com.google.android.material.card.MaterialCardView - android:id="@+id/questionCard" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginStart="16dp" - android:layout_marginTop="16dp" - android:layout_marginEnd="16dp" - app:cardElevation="4dp" - app:cardUseCompatPadding="true" - app:contentPadding="8dp" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent"> - - <androidx.constraintlayout.widget.ConstraintLayout - android:layout_width="match_parent" - android:layout_height="wrap_content"> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/questionView" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="Question" - android:inputType="text|textCapSentences" /> - - </com.google.android.material.textfield.TextInputLayout> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/answerView" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginTop="8dp" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/questionView"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="Answer" - android:inputType="text" /> - - </com.google.android.material.textfield.TextInputLayout> - - </androidx.constraintlayout.widget.ConstraintLayout> - </com.google.android.material.card.MaterialCardView> - - <ImageButton - android:id="@+id/addQuestionButton" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:background="?attr/selectableItemBackground" - android:src="@drawable/ic_add_circle" - android:text="Save" - app:drawableTint="?attr/colorOnPrimarySurface" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintTop_toBottomOf="@+id/questionCard" - tools:ignore="ContentDescription" /> - - <Button - android:id="@+id/saveQuestionButton" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:backgroundTint="@color/green" - android:text="Save" - app:drawableTint="?attr/colorOnPrimarySurface" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" /> - -</androidx.constraintlayout.widget.ConstraintLayout> diff --git a/anastasis-ui/src/main/res/layout/fragment_sms.xml b/anastasis-ui/src/main/res/layout/fragment_sms.xml deleted file mode 100644 index c80f892..0000000 --- a/anastasis-ui/src/main/res/layout/fragment_sms.xml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:app="http://schemas.android.com/apk/res-auto" - android:layout_width="match_parent" - android:layout_height="match_parent"> - - <com.google.android.material.textfield.TextInputLayout - android:id="@+id/smsView" - style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox.Dense" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_margin="16dp" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent"> - - <com.google.android.material.textfield.TextInputEditText - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:hint="Phone Number" - android:inputType="phone" /> - - </com.google.android.material.textfield.TextInputLayout> - - <Button - android:id="@+id/saveSmsButton" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:backgroundTint="@color/green" - android:text="Save" - app:drawableTint="?attr/colorOnPrimarySurface" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" /> - -</androidx.constraintlayout.widget.ConstraintLayout> diff --git a/anastasis-ui/src/main/res/layout/fragment_video.xml b/anastasis-ui/src/main/res/layout/fragment_video.xml deleted file mode 100644 index ecdd102..0000000 --- a/anastasis-ui/src/main/res/layout/fragment_video.xml +++ /dev/null @@ -1,89 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<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"> - - <ImageView - android:id="@+id/imageView2" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_margin="16dp" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" - app:srcCompat="@drawable/ic_baseline_face" /> - - <TextView - android:id="@+id/videoIntro" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:layout_marginTop="24dp" - android:text="Provide a photo of you that will be used when restoring to confirm your identity via a video call." - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toEndOf="@+id/imageView2" - app:layout_constraintTop_toTopOf="parent" /> - - <ImageView - android:id="@+id/photoView" - android:layout_width="0dp" - android:layout_height="0dp" - android:layout_margin="16dp" - android:scaleType="fitCenter" - android:visibility="gone" - app:layout_constraintBottom_toTopOf="@+id/saveVideoButton" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/videoIntro" - tools:srcCompat="@tools:sample/avatars" - tools:visibility="visible" /> - - <Button - android:id="@+id/takePhotoButton" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="Take Photo" - app:layout_constraintBottom_toTopOf="@+id/choosePhotoButton" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/videoIntro" /> - - <Button - android:id="@+id/choosePhotoButton" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="Choose from Gallery" - app:layout_constraintBottom_toTopOf="@+id/saveVideoButton" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/takePhotoButton" /> - - <Button - android:id="@+id/saveVideoButton" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_margin="16dp" - android:backgroundTint="@color/green" - android:enabled="false" - android:text="Save" - app:drawableTint="?attr/colorOnPrimarySurface" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" /> - -</androidx.constraintlayout.widget.ConstraintLayout> diff --git a/anastasis-ui/src/main/res/navigation/anastasis.xml b/anastasis-ui/src/main/res/navigation/anastasis.xml deleted file mode 100644 index efdddca..0000000 --- a/anastasis-ui/src/main/res/navigation/anastasis.xml +++ /dev/null @@ -1,96 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<navigation 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:id="@+id/nav_graph" - app:startDestination="@id/nav_anastasis_intro"> - - <fragment - android:id="@+id/nav_anastasis_intro" - android:name="org.gnu.anastasis.ui.IntroFragment" - android:label="Secure Cloud Recovery" - tools:layout="@layout/fragment_intro"> - <action - android:id="@+id/action_nav_anastasis_intro_to_nav_anastasis_identity" - app:destination="@id/nav_anastasis_identity" - app:enterAnim="@anim/slide_in_right" - app:exitAnim="@anim/slide_out_left" - app:popEnterAnim="@android:anim/slide_in_left" - app:popExitAnim="@android:anim/slide_out_right" /> - </fragment> - - <fragment - android:id="@+id/nav_anastasis_identity" - android:name="org.gnu.anastasis.ui.identity.AnastasisIdentityFragment" - android:label="Define your identity" - tools:layout="@layout/fragment_identity"> - <action - android:id="@+id/action_nav_anastasis_intro_to_nav_anastasis_authentication" - app:destination="@id/nav_anastasis_authentication" - app:enterAnim="@anim/slide_in_right" - app:exitAnim="@anim/slide_out_left" - app:popEnterAnim="@android:anim/slide_in_left" - app:popExitAnim="@android:anim/slide_out_right" /> - <action - android:id="@+id/action_nav_anastasis_identity_to_nav_change_location" - app:destination="@id/nav_change_location" - app:enterAnim="@anim/slide_in_right" - app:exitAnim="@anim/slide_out_left" - app:popEnterAnim="@android:anim/slide_in_left" - app:popExitAnim="@android:anim/slide_out_right" /> - </fragment> - - <fragment - android:id="@+id/nav_change_location" - android:name="org.gnu.anastasis.ui.identity.ChangeLocationFragment" - android:label="Select country" - tools:layout="@layout/fragment_change_location"/> - - <fragment - android:id="@+id/nav_anastasis_authentication" - android:name="org.gnu.anastasis.ui.authentication.AuthenticationFragment" - android:label="Choose authentication methods" - tools:layout="@layout/fragment_authentication"> - <action - android:id="@+id/action_nav_anastasis_authentication_to_securityQuestionFragment" - app:destination="@id/securityQuestionFragment" /> - <action - android:id="@+id/action_nav_anastasis_authentication_to_smsFragment" - app:destination="@id/smsFragment" /> - <action - android:id="@+id/action_nav_anastasis_authentication_to_videoFragment" - app:destination="@id/videoFragment" /> - </fragment> - - <fragment - android:id="@+id/securityQuestionFragment" - android:name="org.gnu.anastasis.ui.authentication.SecurityQuestionFragment" - android:label="Security question" - tools:layout="@layout/fragment_security_question" /> - <fragment - android:id="@+id/smsFragment" - android:name="org.gnu.anastasis.ui.authentication.SmsFragment" - android:label="SMS" - tools:layout="@layout/fragment_sms" /> - <fragment - android:id="@+id/videoFragment" - android:name="org.gnu.anastasis.ui.authentication.VideoFragment" - android:label="Video identification" - tools:layout="@layout/fragment_video" /> - -</navigation> diff --git a/anastasis-ui/src/main/res/values/themes.xml b/anastasis-ui/src/main/res/values/themes.xml deleted file mode 100644 index e6d3422..0000000 --- a/anastasis-ui/src/main/res/values/themes.xml +++ /dev/null @@ -1,32 +0,0 @@ -<!-- - ~ This file is part of GNU Taler - ~ (C) 2020 Taler Systems S.A. - ~ - ~ GNU Taler is free software; you can redistribute it and/or modify it under the - ~ terms of the GNU General Public License as published by the Free Software - ~ Foundation; either version 3, or (at your option) any later version. - ~ - ~ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY - ~ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - ~ A PARTICULAR PURPOSE. See the GNU General Public License for more details. - ~ - ~ You should have received a copy of the GNU General Public License along with - ~ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - --> - -<resources> - - <style name="AppTheme" parent="Theme.MaterialComponents.DayNight.DarkActionBar"> - </style> - - <style name="AppTheme.NoActionBar"> - <item name="windowActionBar">false</item> - <item name="windowNoTitle">true</item> - <item name="android:statusBarColor">@android:color/transparent</item> - </style> - - <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.MaterialComponents.ActionBar" /> - - <style name="AppTheme.Toolbar" parent="Widget.MaterialComponents.Toolbar.Primary" /> - -</resources> |