diff --git a/app/src/main/java/pbd/tubes/exe_android/data/database/TransactionDao.kt b/app/src/main/java/pbd/tubes/exe_android/data/database/TransactionDao.kt index 913f95907dbd94d499cbb572d2096b6e6cb52a4e..3f0de38a6856169c0271e0c00a116dd3ee715bbb 100644 --- a/app/src/main/java/pbd/tubes/exe_android/data/database/TransactionDao.kt +++ b/app/src/main/java/pbd/tubes/exe_android/data/database/TransactionDao.kt @@ -27,7 +27,7 @@ interface TransactionDao { @Query("SELECT * from transactions") fun getAllTransactions(): Flow<List<Transaction>> - @Query("SELECT * from transactions ORDER BY date DESC") + @Query("SELECT * from transactions ORDER BY id DESC") fun getAllTransactionsByRecent(): Flow<List<Transaction>> @Query("SELECT * from transactions WHERE date = :date") diff --git a/app/src/main/java/pbd/tubes/exe_android/ui/login/LoginActivity.kt b/app/src/main/java/pbd/tubes/exe_android/ui/login/LoginActivity.kt index c6584b19b144ce56874f11c675dad8007afe7fb7..d92719f4e1f451ee38a25ef8548316d4dd6d1763 100644 --- a/app/src/main/java/pbd/tubes/exe_android/ui/login/LoginActivity.kt +++ b/app/src/main/java/pbd/tubes/exe_android/ui/login/LoginActivity.kt @@ -5,6 +5,7 @@ import android.os.Bundle import android.util.Log import android.widget.Button import android.widget.EditText +import android.widget.Toast import androidx.appcompat.app.AppCompatActivity import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers @@ -57,7 +58,13 @@ class LoginActivity : AppCompatActivity() { startActivity(Intent(this@LoginActivity, MainActivity::class.java)) finish() } + Toast.makeText(baseContext, + "Log In Success!", + Toast.LENGTH_SHORT).show() } else { + Toast.makeText(baseContext, + "Log In Failed!", + Toast.LENGTH_SHORT).show() Log.d("MyApp", "Failed login (error response)") } } catch (e: Exception) { diff --git a/app/src/main/java/pbd/tubes/exe_android/ui/scan/ScanFragment.kt b/app/src/main/java/pbd/tubes/exe_android/ui/scan/ScanFragment.kt index e0bb55ec93d9a57c1b2e4e54aeac05cb17d71362..f6d02c77431894e18f897ac3003681b6aab8f31a 100644 --- a/app/src/main/java/pbd/tubes/exe_android/ui/scan/ScanFragment.kt +++ b/app/src/main/java/pbd/tubes/exe_android/ui/scan/ScanFragment.kt @@ -159,11 +159,7 @@ class ScanFragment : Fragment() { ContextCompat.checkSelfPermission( requireContext(), it) == PackageManager.PERMISSION_GRANTED } - override fun onDestroyView() { - super.onDestroyView() - _binding = null - cameraExecutor.shutdown() - } + private val activityResultLauncher = registerForActivityResult( ActivityResultContracts.RequestMultiplePermissions()) @@ -208,9 +204,14 @@ class ScanFragment : Fragment() { private const val FILENAME_FORMAT = "yyyy-MM-dd-HH-mm-ss-SSS" private val REQUIRED_PERMISSIONS = mutableListOf ( - "CAMERA" + "CAMERA" // FIXME(this should state list of permissions, not strings) ).apply { add("WRITE_EXTERNAL_STORAGE") }.toTypedArray() } + override fun onDestroyView() { + super.onDestroyView() + _binding = null + cameraExecutor.shutdown() + } } \ No newline at end of file diff --git a/app/src/main/java/pbd/tubes/exe_android/ui/transactions/AddTransactionFragment.kt b/app/src/main/java/pbd/tubes/exe_android/ui/transactions/AddTransactionFragment.kt index ee4936c40ddd9861ac356b0a28d0ea5b5f0f42b0..62fc655220aaa0e7eaa10ea69951bb07e9f836f6 100644 --- a/app/src/main/java/pbd/tubes/exe_android/ui/transactions/AddTransactionFragment.kt +++ b/app/src/main/java/pbd/tubes/exe_android/ui/transactions/AddTransactionFragment.kt @@ -6,6 +6,7 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.RadioButton +import android.widget.Toast import androidx.fragment.app.Fragment import androidx.fragment.app.viewModels import androidx.lifecycle.lifecycleScope @@ -109,8 +110,14 @@ class AddTransactionFragment : Fragment() { chooseCategory()!!, transactionLocation.editText!!.text.toString(), ) + Toast.makeText(requireContext(), + "Transaction ${transactionName.editText!!.text} is added", + Toast.LENGTH_SHORT).show() findNavController().navigate(R.id.navigation_transactions) } catch (e : NullPointerException) { + Toast.makeText(requireContext(), + "Error! $e", + Toast.LENGTH_SHORT).show() Log.e("NULL", "Input has null") } } @@ -118,9 +125,6 @@ class AddTransactionFragment : Fragment() { return root } - - - override fun onDestroyView() { super.onDestroyView() _binding = null diff --git a/app/src/main/java/pbd/tubes/exe_android/ui/transactions/TransactionsFragment.kt b/app/src/main/java/pbd/tubes/exe_android/ui/transactions/TransactionsFragment.kt index 7d39319fc2fde98c6f3376ee1e7bc84271df3c45..342426974bc1c5de496b2957b7e9928b0a4eb3df 100644 --- a/app/src/main/java/pbd/tubes/exe_android/ui/transactions/TransactionsFragment.kt +++ b/app/src/main/java/pbd/tubes/exe_android/ui/transactions/TransactionsFragment.kt @@ -5,6 +5,7 @@ import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.Toast import androidx.fragment.app.Fragment import androidx.fragment.app.viewModels import androidx.recyclerview.widget.LinearLayoutManager @@ -40,6 +41,9 @@ class TransactionsFragment : Fragment() { onDeleteClickListener = { Log.d("MyApp", "Delete button is clicked") viewModel.deleteItem(it) + Toast.makeText(requireContext(), + "Transaction ${it.name} has been deleted", + Toast.LENGTH_SHORT).show() }, onEditClickListener = { Log.d("MyApp", "Edit button is clicked") diff --git a/app/src/main/res/layout-land/activity_main.xml b/app/src/main/res/layout-land/activity_main.xml index c3f3f22d34fecab03c4887a4d6e5fcafe1b5fd11..7c8cd7b4fc15eb3a7d61eeb1f00d0533dd7d87f3 100644 --- a/app/src/main/res/layout-land/activity_main.xml +++ b/app/src/main/res/layout-land/activity_main.xml @@ -30,6 +30,7 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintBottom_toBottomOf="parent" android:layout_gravity="bottom|end" + android:backgroundTint="@color/design_default_color_primary" /> <fragment