diff --git a/app/src/main/java/com/isolaatti/home/FeedFragment.kt b/app/src/main/java/com/isolaatti/home/FeedFragment.kt
index c06bea4..5412ed9 100644
--- a/app/src/main/java/com/isolaatti/home/FeedFragment.kt
+++ b/app/src/main/java/com/isolaatti/home/FeedFragment.kt
@@ -17,6 +17,8 @@ import androidx.lifecycle.lifecycleScope
import androidx.lifecycle.repeatOnLifecycle
import androidx.recyclerview.widget.LinearLayoutManager
import coil.load
+import com.google.android.material.button.MaterialButton
+import com.google.android.material.card.MaterialCardView
import com.isolaatti.BuildConfig
import com.isolaatti.R
import com.isolaatti.about.AboutActivity
@@ -50,6 +52,7 @@ import io.noties.markwon.image.coil.CoilImagesPlugin
import io.noties.markwon.image.destination.ImageDestinationProcessorRelativeToAbsolute
import io.noties.markwon.linkify.LinkifyPlugin
import kotlinx.coroutines.launch
+import org.w3c.dom.Text
@AndroidEntryPoint
class FeedFragment : Fragment(), OnUserInteractedWithPostCallback {
@@ -134,10 +137,6 @@ class FeedFragment : Fragment(), OnUserInteractedWithPostCallback {
viewBinding.homeDrawer.setNavigationItemSelectedListener {
when(it.itemId) {
- R.id.my_profile_menu_item -> {
- ProfileActivity.startActivity(requireContext(), currentUserId)
- true
- }
R.id.drafts_menu_item -> {
startActivity(Intent(requireActivity(), DraftsActivity::class.java))
true
@@ -194,14 +193,18 @@ class FeedFragment : Fragment(), OnUserInteractedWithPostCallback {
val image: ImageView? = header?.findViewById(R.id.profileImageView)
val textViewName: TextView? = header?.findViewById(R.id.textViewName)
val textViewEmail: TextView? = header?.findViewById(R.id.textViewEmail)
+ val textViewUsername: TextView? = header?.findViewById(R.id.textViewUsername)
image?.load(UrlGen.userProfileImage(it.userId), imageLoader)
- image?.setOnClickListener {_ ->
- //PictureViewerActivity.startActivityWithImages(requireContext(), arrayOf(UrlGen.userProfileImageFullQuality(it.userId)))
+
+ val card: MaterialCardView? = header?.findViewById(R.id.drawer_header_card)
+ card?.setOnClickListener {
+ ProfileActivity.startActivity(requireContext(), currentUserId)
}
textViewName?.text = it.name
textViewEmail?.text = it.email
+ textViewUsername?.text = "@${it.uniqueUsername}"
currentUserId = it.userId
}
diff --git a/app/src/main/java/com/isolaatti/settings/ui/AccountSettingsFragment.kt b/app/src/main/java/com/isolaatti/settings/ui/AccountSettingsFragment.kt
new file mode 100644
index 0000000..07c4cbc
--- /dev/null
+++ b/app/src/main/java/com/isolaatti/settings/ui/AccountSettingsFragment.kt
@@ -0,0 +1,22 @@
+package com.isolaatti.settings.ui
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.isolaatti.databinding.FragmentAccountSettingsBinding
+
+class AccountSettingsFragment : Fragment() {
+ private lateinit var binding: FragmentAccountSettingsBinding
+
+ override fun onCreateView(
+ inflater: LayoutInflater,
+ container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View {
+ binding = FragmentAccountSettingsBinding.inflate(layoutInflater)
+
+ return binding.root
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/isolaatti/settings/ui/PrivacySettingsFragment.kt b/app/src/main/java/com/isolaatti/settings/ui/PrivacySettingsFragment.kt
new file mode 100644
index 0000000..1eddd11
--- /dev/null
+++ b/app/src/main/java/com/isolaatti/settings/ui/PrivacySettingsFragment.kt
@@ -0,0 +1,22 @@
+package com.isolaatti.settings.ui
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.isolaatti.databinding.FragmentPrivacySettingsBinding
+
+class PrivacySettingsFragment : Fragment() {
+ private lateinit var binding: FragmentPrivacySettingsBinding
+
+ override fun onCreateView(
+ inflater: LayoutInflater,
+ container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View {
+ binding = FragmentPrivacySettingsBinding.inflate(layoutInflater)
+
+ return binding.root
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/isolaatti/settings/ui/SettingsFragment.kt b/app/src/main/java/com/isolaatti/settings/ui/SettingsFragment.kt
index a6ed41e..540d755 100644
--- a/app/src/main/java/com/isolaatti/settings/ui/SettingsFragment.kt
+++ b/app/src/main/java/com/isolaatti/settings/ui/SettingsFragment.kt
@@ -1,12 +1,38 @@
package com.isolaatti.settings.ui
import android.os.Bundle
-import androidx.preference.PreferenceFragmentCompat
-import com.isolaatti.R
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import androidx.navigation.fragment.findNavController
+import com.isolaatti.databinding.FragmentSettingsBinding
-class SettingsFragment : PreferenceFragmentCompat() {
+class SettingsFragment : Fragment() {
+ private lateinit var binding: FragmentSettingsBinding
- override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
- setPreferencesFromResource(R.xml.preferences, rootKey)
+ override fun onCreateView(
+ inflater: LayoutInflater,
+ container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View {
+ binding = FragmentSettingsBinding.inflate(layoutInflater)
+
+ return binding.root
+ }
+
+ override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
+ super.onViewCreated(view, savedInstanceState)
+
+ setupListeners()
+ }
+
+ private fun setupListeners() {
+ binding.toolbar.setNavigationOnClickListener {
+ requireActivity().finish()
+ }
+ binding.goToAccountSettingsButton.setOnClickListener {
+ findNavController().navigate(SettingsFragmentDirections.actionSettingsFragmentToAccountSettingsFragment())
+ }
}
}
\ No newline at end of file
diff --git a/app/src/main/res/drawable/baseline_arrow_right_alt_24.xml b/app/src/main/res/drawable/baseline_arrow_right_alt_24.xml
new file mode 100644
index 0000000..6d9a2bb
--- /dev/null
+++ b/app/src/main/res/drawable/baseline_arrow_right_alt_24.xml
@@ -0,0 +1,5 @@
+