mirror of
https://github.com/nextcloud/talk-android
synced 2025-06-19 03:29:28 +01:00
wip
Signed-off-by: tobiasKaminsky <tobias@kaminsky.me>
This commit is contained in:
parent
91260ac9cb
commit
e926feabc7
@ -161,6 +161,9 @@ class ConversationsListActivity :
|
|||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
lateinit var platformPermissionUtil: PlatformPermissionUtil
|
lateinit var platformPermissionUtil: PlatformPermissionUtil
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
lateinit var arbitraryStorageManager: ArbitraryStorageManager
|
||||||
|
|
||||||
override val appBarLayoutType: AppBarLayoutType
|
override val appBarLayoutType: AppBarLayoutType
|
||||||
get() = AppBarLayoutType.SEARCH_BAR
|
get() = AppBarLayoutType.SEARCH_BAR
|
||||||
@ -277,8 +280,18 @@ class ConversationsListActivity :
|
|||||||
showSearchOrToolbar()
|
showSearchOrToolbar()
|
||||||
}
|
}
|
||||||
fun filterConversation() {
|
fun filterConversation() {
|
||||||
filterState[FilterConversationFragment.UNREAD] = appPreferences.isUnreadFilterEnabled
|
val accountId = UserIdUtils.getIdForUser(userManager.currentUser.blockingGet())
|
||||||
filterState[FilterConversationFragment.MENTION] = appPreferences.isMentionFilterEnabled
|
filterState[FilterConversationFragment.UNREAD] = (arbitraryStorageManager.getStorageSetting(
|
||||||
|
accountId,
|
||||||
|
FilterConversationFragment.UNREAD,
|
||||||
|
""
|
||||||
|
).blockingGet()?.value ?: "") == "true"
|
||||||
|
|
||||||
|
filterState[FilterConversationFragment.MENTION] = (arbitraryStorageManager.getStorageSetting(
|
||||||
|
accountId,
|
||||||
|
FilterConversationFragment.MENTION,
|
||||||
|
""
|
||||||
|
).blockingGet()?.value ?: "") == "true"
|
||||||
|
|
||||||
val newItems: MutableList<AbstractFlexibleItem<*>> = ArrayList()
|
val newItems: MutableList<AbstractFlexibleItem<*>> = ArrayList()
|
||||||
if (filterState[FilterConversationFragment.UNREAD] == false &&
|
if (filterState[FilterConversationFragment.UNREAD] == false &&
|
||||||
|
@ -28,19 +28,14 @@ import androidx.fragment.app.DialogFragment
|
|||||||
import autodagger.AutoInjector
|
import autodagger.AutoInjector
|
||||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||||
import com.nextcloud.talk.R
|
import com.nextcloud.talk.R
|
||||||
import com.nextcloud.talk.adapters.items.ConversationItem
|
|
||||||
import com.nextcloud.talk.application.NextcloudTalkApplication
|
import com.nextcloud.talk.application.NextcloudTalkApplication
|
||||||
import com.nextcloud.talk.arbitrarystorage.ArbitraryStorageManager
|
import com.nextcloud.talk.arbitrarystorage.ArbitraryStorageManager
|
||||||
import com.nextcloud.talk.conversationlist.ConversationsListActivity
|
import com.nextcloud.talk.conversationlist.ConversationsListActivity
|
||||||
import com.nextcloud.talk.databinding.DialogFilterConversationBinding
|
import com.nextcloud.talk.databinding.DialogFilterConversationBinding
|
||||||
import com.nextcloud.talk.models.json.conversations.Conversation
|
|
||||||
import com.nextcloud.talk.ui.theme.ViewThemeUtils
|
import com.nextcloud.talk.ui.theme.ViewThemeUtils
|
||||||
import com.nextcloud.talk.users.UserManager
|
import com.nextcloud.talk.users.UserManager
|
||||||
import com.nextcloud.talk.utils.UserIdUtils
|
import com.nextcloud.talk.utils.UserIdUtils
|
||||||
import com.nextcloud.talk.utils.UserIdUtils.getIdForUser
|
|
||||||
import com.nextcloud.talk.utils.preferences.AppPreferences
|
import com.nextcloud.talk.utils.preferences.AppPreferences
|
||||||
import eu.davidea.flexibleadapter.FlexibleAdapter
|
|
||||||
import eu.davidea.flexibleadapter.items.AbstractFlexibleItem
|
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
|
|
||||||
@AutoInjector(NextcloudTalkApplication::class)
|
@AutoInjector(NextcloudTalkApplication::class)
|
||||||
@ -60,7 +55,7 @@ class FilterConversationFragment(
|
|||||||
lateinit var viewThemeUtils: ViewThemeUtils
|
lateinit var viewThemeUtils: ViewThemeUtils
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
lateinit var appPreferences: AppPreferences
|
lateinit var arbitraryStorageManager: ArbitraryStorageManager
|
||||||
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
|
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
|
||||||
binding = DialogFilterConversationBinding.inflate(LayoutInflater.from(context))
|
binding = DialogFilterConversationBinding.inflate(LayoutInflater.from(context))
|
||||||
dialogView = binding.root
|
dialogView = binding.root
|
||||||
@ -123,8 +118,15 @@ class FilterConversationFragment(
|
|||||||
|
|
||||||
private fun processSubmit() {
|
private fun processSubmit() {
|
||||||
// store
|
// store
|
||||||
appPreferences.setMentionFilter(filterState[MENTION] == true)
|
val accountId = UserIdUtils.getIdForUser(userManager.currentUser.blockingGet())
|
||||||
appPreferences.setUnreadFilter(filterState[UNREAD] == true)
|
val mentionValue = filterState[MENTION] == true
|
||||||
|
val unreadValue = filterState[UNREAD] == true
|
||||||
|
|
||||||
|
arbitraryStorageManager.storeStorageSetting(accountId, MENTION, mentionValue.toString(), "")
|
||||||
|
arbitraryStorageManager.storeStorageSetting(accountId, UNREAD, unreadValue.toString(), "")
|
||||||
|
|
||||||
|
val m = arbitraryStorageManager.getStorageSetting(accountId, MENTION, "")
|
||||||
|
val u = arbitraryStorageManager.getStorageSetting(accountId, UNREAD, "")
|
||||||
|
|
||||||
conversationsList.filterConversation()
|
conversationsList.filterConversation()
|
||||||
}
|
}
|
||||||
@ -136,7 +138,7 @@ class FilterConversationFragment(
|
|||||||
conversationsListActivity: ConversationsListActivity
|
conversationsListActivity: ConversationsListActivity
|
||||||
) = FilterConversationFragment(savedFilterState, conversationsListActivity)
|
) = FilterConversationFragment(savedFilterState, conversationsListActivity)
|
||||||
val TAG: String = FilterConversationFragment::class.java.simpleName
|
val TAG: String = FilterConversationFragment::class.java.simpleName
|
||||||
const val MENTION: String = "mention"
|
const val MENTION: String = "TestmentionTest"
|
||||||
const val UNREAD: String = "unread"
|
const val UNREAD: String = "unread"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -344,20 +344,6 @@ public interface AppPreferences {
|
|||||||
@KeyByResource(R.string.nc_file_browser_sort_by_key)
|
@KeyByResource(R.string.nc_file_browser_sort_by_key)
|
||||||
@DefaultValue(R.string.nc_file_browser_sort_by_default)
|
@DefaultValue(R.string.nc_file_browser_sort_by_default)
|
||||||
String getSorting();
|
String getSorting();
|
||||||
|
|
||||||
@KeyByResource(R.string.nc_filter_unread)
|
|
||||||
@DefaultValue(R.bool.value_false)
|
|
||||||
boolean isUnreadFilterEnabled();
|
|
||||||
|
|
||||||
@KeyByResource(R.string.nc_filter_unread)
|
|
||||||
void setUnreadFilter(boolean value);
|
|
||||||
|
|
||||||
@KeyByResource(R.string.nc_filter_mention)
|
|
||||||
@DefaultValue(R.bool.value_false)
|
|
||||||
boolean isMentionFilterEnabled();
|
|
||||||
|
|
||||||
@KeyByResource(R.string.nc_filter_mention)
|
|
||||||
void setMentionFilter(boolean value);
|
|
||||||
|
|
||||||
@KeyByResource(R.string.nc_file_browser_sort_by_key)
|
@KeyByResource(R.string.nc_file_browser_sort_by_key)
|
||||||
@RegisterChangeListenerMethod
|
@RegisterChangeListenerMethod
|
||||||
|
@ -709,5 +709,6 @@ How to translate with transifex:
|
|||||||
<string name="custom">Custom</string>
|
<string name="custom">Custom</string>
|
||||||
<string name="set">Set</string>
|
<string name="set">Set</string>
|
||||||
<string name="calendar">Calendar</string>
|
<string name="calendar">Calendar</string>
|
||||||
|
<string name="empty" translatable="false"/>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
Loading…
Reference in New Issue
Block a user