diff --git a/app/src/main/java/org/thoughtcrime/securesms/dependencies/ConfigFactory.kt b/app/src/main/java/org/thoughtcrime/securesms/dependencies/ConfigFactory.kt index 879119f30..8e2fcb9a7 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/dependencies/ConfigFactory.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/dependencies/ConfigFactory.kt @@ -316,7 +316,7 @@ class ConfigFactory( ) } - override fun persist(forConfigObject: Config, timestamp: Long) { + override fun persist(forConfigObject: Config, timestamp: Long, forPublicKey: String?) { try { listeners.forEach { listener -> listener.notifyUpdates(forConfigObject) @@ -326,6 +326,8 @@ class ConfigFactory( is Contacts -> persistContactsConfigDump(timestamp) is ConversationVolatileConfig -> persistConvoVolatileConfigDump(timestamp) is UserGroupsConfig -> persistUserGroupsConfigDump(timestamp) + is GroupMembersConfig -> persistGroupConfigDump(forConfigObject, SessionId.from(forPublicKey!!), timestamp) + is GroupInfoConfig -> persistGroupConfigDump(forConfigObject, SessionId.from(forPublicKey!!), timestamp) else -> throw UnsupportedOperationException("Can't support type of ${forConfigObject::class.simpleName} yet") } } catch (e: Exception) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/groups/compose/CreateGroup.kt b/app/src/main/java/org/thoughtcrime/securesms/groups/compose/CreateGroup.kt index 663917e2a..433bb5588 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/groups/compose/CreateGroup.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/groups/compose/CreateGroup.kt @@ -146,7 +146,6 @@ fun CreateGroup( } } } - } } // Group list @@ -182,7 +181,8 @@ fun CreateGroup( .fillMaxSize() .background(Color.Gray.copy(alpha = 0.5f))) { CircularProgressIndicator( - modifier = Modifier.align(Alignment.Center) + modifier = Modifier.align(Alignment.Center), + color = MaterialTheme.colors.secondary ) } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/groups/compose/SelectContacts.kt b/app/src/main/java/org/thoughtcrime/securesms/groups/compose/SelectContacts.kt index 3b717ddf4..46247218c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/groups/compose/SelectContacts.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/groups/compose/SelectContacts.kt @@ -41,7 +41,7 @@ fun SelectContacts( contactListState .filter { contact -> contact.getSearchName().lowercase() - .contains(queryFilter) + .contains(queryFilter.lowercase()) } .toList() } diff --git a/libsession/src/main/java/org/session/libsession/messaging/jobs/ConfigurationSyncJob.kt b/libsession/src/main/java/org/session/libsession/messaging/jobs/ConfigurationSyncJob.kt index 946d3cc64..b2ca9d23a 100644 --- a/libsession/src/main/java/org/session/libsession/messaging/jobs/ConfigurationSyncJob.kt +++ b/libsession/src/main/java/org/session/libsession/messaging/jobs/ConfigurationSyncJob.kt @@ -252,8 +252,9 @@ data class ConfigurationSyncJob(val destination: Destination) : Job { "Successfully removed the deleted hashes from ${config.javaClass.simpleName}" ) // dump and write config after successful - if (config is ConfigBase && config.needsDump()) { // usually this will be true? - configFactory.persist(config, (message.params["timestamp"] as String).toLong()) + if (config is ConfigBase && config.needsDump()) { // usually this will be true? )) + val groupPubKey = if (destination is Destination.ClosedGroup) destination.publicKey else null + configFactory.persist(config, (message.params["timestamp"] as String).toLong(), groupPubKey) } else if (config is GroupKeysConfig && config.needsDump()) { Log.d("Loki", "Should persist the GroupKeysConfig") } diff --git a/libsession/src/main/java/org/session/libsession/messaging/sending_receiving/pollers/ClosedGroupPoller.kt b/libsession/src/main/java/org/session/libsession/messaging/sending_receiving/pollers/ClosedGroupPoller.kt index 2d04e36b3..68a976315 100644 --- a/libsession/src/main/java/org/session/libsession/messaging/sending_receiving/pollers/ClosedGroupPoller.kt +++ b/libsession/src/main/java/org/session/libsession/messaging/sending_receiving/pollers/ClosedGroupPoller.kt @@ -59,7 +59,7 @@ class ClosedGroupPoller(private val scope: CoroutineScope, companion object { const val POLL_INTERVAL = 3_000L - const val ENABLE_LOGGING = true + const val ENABLE_LOGGING = false } private var isRunning: Boolean = false diff --git a/libsession/src/main/java/org/session/libsession/utilities/ConfigFactoryProtocol.kt b/libsession/src/main/java/org/session/libsession/utilities/ConfigFactoryProtocol.kt index 37584c9f9..d0a9af92d 100644 --- a/libsession/src/main/java/org/session/libsession/utilities/ConfigFactoryProtocol.kt +++ b/libsession/src/main/java/org/session/libsession/utilities/ConfigFactoryProtocol.kt @@ -26,7 +26,7 @@ interface ConfigFactoryProtocol { free: Boolean = true): GroupKeysConfig? fun getUserConfigs(): List - fun persist(forConfigObject: Config, timestamp: Long) + fun persist(forConfigObject: Config, timestamp: Long, forPublicKey: String? = null) fun conversationInConfig(publicKey: String?, groupPublicKey: String?, openGroupId: String?, visibleOnly: Boolean): Boolean fun canPerformChange(variant: String, publicKey: String, changeTimestampMs: Long): Boolean