mirror of
https://github.com/oxen-io/session-android.git
synced 2025-02-19 19:58:26 +00:00
WIP notification
This commit is contained in:
parent
d5c84b3c60
commit
cb5ee74a43
@ -1,2 +0,0 @@
|
||||
package org.session.libsession.messaging.sending_receiving.notifications
|
||||
|
@ -0,0 +1,16 @@
|
||||
package org.session.libsession.messaging.sending_receiving.notifications
|
||||
|
||||
import android.content.Context
|
||||
import org.session.libsession.messaging.threads.recipients.Recipient
|
||||
|
||||
interface NotificationProtocol {
|
||||
fun setVisibleThread(threadId: Long)
|
||||
fun setLastDesktopActivityTimestamp(timestamp: Long)
|
||||
fun notifyMessageDeliveryFailed(context: Context?, recipient: Recipient?, threadId: Long)
|
||||
fun cancelDelayedNotifications()
|
||||
fun updateNotification(context: Context)
|
||||
fun updateNotification(context: Context, threadId: Long)
|
||||
fun updateNotification(context: Context, threadId: Long, signal: Boolean)
|
||||
fun updateNotification(context: Context, signal: Boolean, reminderCount: Int)
|
||||
fun clearReminder(context: Context)
|
||||
}
|
@ -1,6 +1,7 @@
|
||||
package org.session.libsession.utilities
|
||||
|
||||
import android.content.Context
|
||||
import org.session.libsession.messaging.sending_receiving.notifications.NotificationProtocol
|
||||
import org.session.libsession.messaging.threads.Address
|
||||
import org.session.libsession.messaging.threads.recipients.Recipient
|
||||
|
||||
@ -8,7 +9,8 @@ class SSKEnvironment(
|
||||
val typingIndicators: TypingIndicatorsProtocol,
|
||||
val blockManager: BlockingManagerProtocol,
|
||||
val readReceiptManager: ReadReceiptManagerProtocol,
|
||||
val profileManager: ProfileManagerProtocol
|
||||
val profileManager: ProfileManagerProtocol,
|
||||
val notificationManager: NotificationProtocol
|
||||
) {
|
||||
interface TypingIndicatorsProtocol {
|
||||
fun didReceiveTypingStartedMessage(context: Context, threadId: Long, author: Address, device: Int)
|
||||
@ -38,9 +40,10 @@ class SSKEnvironment(
|
||||
fun configure(typingIndicators: TypingIndicatorsProtocol,
|
||||
blockManager: BlockingManagerProtocol,
|
||||
readReceiptManager: ReadReceiptManagerProtocol,
|
||||
profileManager: ProfileManagerProtocol) {
|
||||
profileManager: ProfileManagerProtocol,
|
||||
notificationManager: NotificationProtocol) {
|
||||
if (Companion::shared.isInitialized) { return }
|
||||
shared = SSKEnvironment(typingIndicators, blockManager, readReceiptManager, profileManager)
|
||||
shared = SSKEnvironment(typingIndicators, blockManager, readReceiptManager, profileManager, notificationManager)
|
||||
}
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user