mirror of
https://github.com/oxen-io/session-android.git
synced 2025-04-28 07:20:47 +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
|
package org.session.libsession.utilities
|
||||||
|
|
||||||
import android.content.Context
|
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.Address
|
||||||
import org.session.libsession.messaging.threads.recipients.Recipient
|
import org.session.libsession.messaging.threads.recipients.Recipient
|
||||||
|
|
||||||
@ -8,7 +9,8 @@ class SSKEnvironment(
|
|||||||
val typingIndicators: TypingIndicatorsProtocol,
|
val typingIndicators: TypingIndicatorsProtocol,
|
||||||
val blockManager: BlockingManagerProtocol,
|
val blockManager: BlockingManagerProtocol,
|
||||||
val readReceiptManager: ReadReceiptManagerProtocol,
|
val readReceiptManager: ReadReceiptManagerProtocol,
|
||||||
val profileManager: ProfileManagerProtocol
|
val profileManager: ProfileManagerProtocol,
|
||||||
|
val notificationManager: NotificationProtocol
|
||||||
) {
|
) {
|
||||||
interface TypingIndicatorsProtocol {
|
interface TypingIndicatorsProtocol {
|
||||||
fun didReceiveTypingStartedMessage(context: Context, threadId: Long, author: Address, device: Int)
|
fun didReceiveTypingStartedMessage(context: Context, threadId: Long, author: Address, device: Int)
|
||||||
@ -38,9 +40,10 @@ class SSKEnvironment(
|
|||||||
fun configure(typingIndicators: TypingIndicatorsProtocol,
|
fun configure(typingIndicators: TypingIndicatorsProtocol,
|
||||||
blockManager: BlockingManagerProtocol,
|
blockManager: BlockingManagerProtocol,
|
||||||
readReceiptManager: ReadReceiptManagerProtocol,
|
readReceiptManager: ReadReceiptManagerProtocol,
|
||||||
profileManager: ProfileManagerProtocol) {
|
profileManager: ProfileManagerProtocol,
|
||||||
|
notificationManager: NotificationProtocol) {
|
||||||
if (Companion::shared.isInitialized) { return }
|
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