diff --git a/Habitica/res/values-fr/strings.xml b/Habitica/res/values-fr/strings.xml index 93d634e2a..d9c045255 100644 --- a/Habitica/res/values-fr/strings.xml +++ b/Habitica/res/values-fr/strings.xml @@ -733,7 +733,7 @@ Vous avez obtenu un succès ! Voir les succès Voir les nouveautés - Vous ouvrez la boite et trouvez %@ + Vous ouvrez la boite et trouvez %s %s ne fait plus partie du groupe Transférer Confirmez-vous vouloir retirer %s du groupe \? diff --git a/Habitica/res/values-ja/strings.xml b/Habitica/res/values-ja/strings.xml index c3d536934..80b92d9ac 100644 --- a/Habitica/res/values-ja/strings.xml +++ b/Habitica/res/values-ja/strings.xml @@ -846,7 +846,7 @@ すべての乗騎を集めた実績、「乗騎使い」を手に入れました! 乗騎使い 全てのペットを集めたため、「獣使い」の実績を獲得しました! - 宝箱を開け、%@を見つけました + 宝箱を開け、%sを見つけました %sはグループから解除されました 移譲する 本当に%sをグループから解除しますか? diff --git a/Habitica/res/xml/preferences_fragment.xml b/Habitica/res/xml/preferences_fragment.xml index 5b07f12c0..75852e598 100644 --- a/Habitica/res/xml/preferences_fragment.xml +++ b/Habitica/res/xml/preferences_fragment.xml @@ -118,7 +118,8 @@ + android:layout="@layout/preference_child_summary" + app:isPreferenceVisible="false"/> diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/BaseFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/BaseFragment.kt index 9cafc7679..bc17cc890 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/BaseFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/BaseFragment.kt @@ -23,6 +23,7 @@ import javax.inject.Inject abstract class BaseFragment : DialogFragment() { + var isModal: Boolean = false abstract var binding: VB? @Inject diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/items/ItemRecyclerFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/items/ItemRecyclerFragment.kt index 7fb6b1f07..fbe43a51c 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/items/ItemRecyclerFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/items/ItemRecyclerFragment.kt @@ -10,6 +10,7 @@ import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.components.UserComponent import com.habitrpg.android.habitica.data.InventoryRepository +import com.habitrpg.android.habitica.data.SocialRepository import com.habitrpg.android.habitica.data.UserRepository import com.habitrpg.android.habitica.databinding.FragmentItemsBinding import com.habitrpg.android.habitica.extensions.subscribeWithErrorHandler @@ -32,6 +33,8 @@ class ItemRecyclerFragment : BaseFragment(), SwipeRefreshL @Inject lateinit var inventoryRepository: InventoryRepository @Inject + lateinit var socialRepository: SocialRepository + @Inject lateinit var userRepository: UserRepository var adapter: ItemRecyclerAdapter? = null var itemType: String? = null @@ -93,7 +96,14 @@ class ItemRecyclerFragment : BaseFragment(), SwipeRefreshL compositeSubscription.add(adapter.getQuestInvitationFlowable() .flatMap { quest -> inventoryRepository.inviteToQuest(quest) } - .subscribe({ MainNavigationController.navigate(R.id.partyFragment) }, RxErrorHandler.handleEmptyError())) + .flatMap { socialRepository.retrieveGroup("party") } + .subscribe({ + if (isModal) { + activity?.supportFragmentManager?.popBackStack() + } else { + MainNavigationController.navigate(R.id.partyFragment) + } + }, RxErrorHandler.handleEmptyError())) compositeSubscription.add(adapter.getOpenMysteryItemFlowable() .flatMap { inventoryRepository.openMysteryItem(user) } .doOnNext { diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/preferences/PreferencesFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/preferences/PreferencesFragment.kt index d9c1eb711..473c908a1 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/preferences/PreferencesFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/preferences/PreferencesFragment.kt @@ -6,6 +6,7 @@ import android.content.SharedPreferences import android.content.res.Configuration import android.os.Build import android.os.Bundle +import android.view.View import androidx.appcompat.app.AlertDialog import androidx.preference.CheckBoxPreference import androidx.preference.ListPreference @@ -54,12 +55,16 @@ class PreferencesFragment : BasePreferencesFragment(), SharedPreferences.OnShare super.onCreate(savedInstanceState) } + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + listView.itemAnimator = null + } + override fun setupPreferences() { timePreference = findPreference("reminder_time") as? TimePreference val useReminder = preferenceManager.sharedPreferences.getBoolean("use_reminder", false) timePreference?.isEnabled = useReminder - pushNotificationsPreference = findPreference("pushNotifications") as? PreferenceScreen val usePushNotifications = preferenceManager.sharedPreferences.getBoolean("usePushNotifications", true) pushNotificationsPreference?.isEnabled = usePushNotifications diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/QuestDetailFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/QuestDetailFragment.kt index b571704b1..1a1e8e926 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/QuestDetailFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/QuestDetailFragment.kt @@ -238,7 +238,7 @@ class QuestDetailFragment : BaseMainFragment() { @Suppress("DEPRECATION") socialRepository.cancelQuest(partyID) .flatMap { userRepository.retrieveUser() } - .subscribe({ getActivity()?.fragmentManager?.popBackStack() }, RxErrorHandler.handleEmptyError()) + .subscribe({ getActivity()?.supportFragmentManager?.popBackStack() }, RxErrorHandler.handleEmptyError()) } } alert.addButton(R.string.no, false) @@ -254,7 +254,7 @@ class QuestDetailFragment : BaseMainFragment() { @Suppress("DEPRECATION") socialRepository.abortQuest(partyID) .flatMap { userRepository.retrieveUser() } - .subscribe({ getActivity()?.fragmentManager?.popBackStack() }, RxErrorHandler.handleEmptyError()) + .subscribe({ getActivity()?.supportFragmentManager?.popBackStack() }, RxErrorHandler.handleEmptyError()) } }.setNegativeButton(R.string.no) { _, _ -> } builder.show() diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyDetailFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyDetailFragment.kt index 3c6269a96..91f3afc5c 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyDetailFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyDetailFragment.kt @@ -326,6 +326,7 @@ class PartyDetailFragment : BaseFragment() { val fragment = ItemRecyclerFragment() fragment.itemType = "quests" fragment.itemTypeText = getString(R.string.quest) + fragment.isModal = true fragment.show(parentFragmentManager, "questDialog") }