Skip to content

Upgrade Flutter and packages #1278

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
Jan 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
156 changes: 74 additions & 82 deletions android/app/src/main/kotlin/com/zulip/flutter/Notifications.g.kt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Autogenerated from Pigeon (v20.0.2), do not edit directly.
// Autogenerated from Pigeon (v22.7.2), do not edit directly.
// See also: https://pub.dev/packages/pigeon
@file:Suppress("UNCHECKED_CAST", "ArrayInDataClass")

Expand All @@ -7,7 +7,9 @@ package com.zulip.flutter
import android.util.Log
import io.flutter.plugin.common.BasicMessageChannel
import io.flutter.plugin.common.BinaryMessenger
import io.flutter.plugin.common.EventChannel
import io.flutter.plugin.common.MessageCodec
import io.flutter.plugin.common.StandardMethodCodec
import io.flutter.plugin.common.StandardMessageCodec
import java.io.ByteArrayOutputStream
import java.nio.ByteBuffer
Expand Down Expand Up @@ -64,17 +66,16 @@ data class NotificationChannel (
val lightsEnabled: Boolean? = null,
val soundUrl: String? = null,
val vibrationPattern: LongArray? = null

) {
)
{
companion object {
@Suppress("LocalVariableName")
fun fromList(__pigeon_list: List<Any?>): NotificationChannel {
val id = __pigeon_list[0] as String
val importance = __pigeon_list[1].let { num -> if (num is Int) num.toLong() else num as Long }
val name = __pigeon_list[2] as String?
val lightsEnabled = __pigeon_list[3] as Boolean?
val soundUrl = __pigeon_list[4] as String?
val vibrationPattern = __pigeon_list[5] as LongArray?
fun fromList(pigeonVar_list: List<Any?>): NotificationChannel {
val id = pigeonVar_list[0] as String
val importance = pigeonVar_list[1] as Long
val name = pigeonVar_list[2] as String?
val lightsEnabled = pigeonVar_list[3] as Boolean?
val soundUrl = pigeonVar_list[4] as String?
val vibrationPattern = pigeonVar_list[5] as LongArray?
return NotificationChannel(id, importance, name, lightsEnabled, soundUrl, vibrationPattern)
}
}
Expand Down Expand Up @@ -104,14 +105,13 @@ data class AndroidIntent (
val dataUrl: String,
/** A combination of flags from [IntentFlag]. */
val flags: Long

) {
)
{
companion object {
@Suppress("LocalVariableName")
fun fromList(__pigeon_list: List<Any?>): AndroidIntent {
val action = __pigeon_list[0] as String
val dataUrl = __pigeon_list[1] as String
val flags = __pigeon_list[2].let { num -> if (num is Int) num.toLong() else num as Long }
fun fromList(pigeonVar_list: List<Any?>): AndroidIntent {
val action = pigeonVar_list[0] as String
val dataUrl = pigeonVar_list[1] as String
val flags = pigeonVar_list[2] as Long
return AndroidIntent(action, dataUrl, flags)
}
}
Expand Down Expand Up @@ -139,14 +139,13 @@ data class PendingIntent (
* with `Intent`; see Android docs for `PendingIntent.getActivity`.
*/
val flags: Long

) {
)
{
companion object {
@Suppress("LocalVariableName")
fun fromList(__pigeon_list: List<Any?>): PendingIntent {
val requestCode = __pigeon_list[0].let { num -> if (num is Int) num.toLong() else num as Long }
val intent = __pigeon_list[1] as AndroidIntent
val flags = __pigeon_list[2].let { num -> if (num is Int) num.toLong() else num as Long }
fun fromList(pigeonVar_list: List<Any?>): PendingIntent {
val requestCode = pigeonVar_list[0] as Long
val intent = pigeonVar_list[1] as AndroidIntent
val flags = pigeonVar_list[2] as Long
return PendingIntent(requestCode, intent, flags)
}
}
Expand All @@ -168,12 +167,11 @@ data class PendingIntent (
*/
data class InboxStyle (
val summaryText: String

) {
)
{
companion object {
@Suppress("LocalVariableName")
fun fromList(__pigeon_list: List<Any?>): InboxStyle {
val summaryText = __pigeon_list[0] as String
fun fromList(pigeonVar_list: List<Any?>): InboxStyle {
val summaryText = pigeonVar_list[0] as String
return InboxStyle(summaryText)
}
}
Expand Down Expand Up @@ -205,14 +203,13 @@ data class Person (
val iconBitmap: ByteArray? = null,
val key: String,
val name: String

) {
)
{
companion object {
@Suppress("LocalVariableName")
fun fromList(__pigeon_list: List<Any?>): Person {
val iconBitmap = __pigeon_list[0] as ByteArray?
val key = __pigeon_list[1] as String
val name = __pigeon_list[2] as String
fun fromList(pigeonVar_list: List<Any?>): Person {
val iconBitmap = pigeonVar_list[0] as ByteArray?
val key = pigeonVar_list[1] as String
val name = pigeonVar_list[2] as String
return Person(iconBitmap, key, name)
}
}
Expand All @@ -236,14 +233,13 @@ data class MessagingStyleMessage (
val text: String,
val timestampMs: Long,
val person: Person

) {
)
{
companion object {
@Suppress("LocalVariableName")
fun fromList(__pigeon_list: List<Any?>): MessagingStyleMessage {
val text = __pigeon_list[0] as String
val timestampMs = __pigeon_list[1].let { num -> if (num is Int) num.toLong() else num as Long }
val person = __pigeon_list[2] as Person
fun fromList(pigeonVar_list: List<Any?>): MessagingStyleMessage {
val text = pigeonVar_list[0] as String
val timestampMs = pigeonVar_list[1] as Long
val person = pigeonVar_list[2] as Person
return MessagingStyleMessage(text, timestampMs, person)
}
}
Expand All @@ -266,17 +262,16 @@ data class MessagingStyleMessage (
data class MessagingStyle (
val user: Person,
val conversationTitle: String? = null,
val messages: List<MessagingStyleMessage?>,
val messages: List<MessagingStyleMessage>,
val isGroupConversation: Boolean

) {
)
{
companion object {
@Suppress("LocalVariableName")
fun fromList(__pigeon_list: List<Any?>): MessagingStyle {
val user = __pigeon_list[0] as Person
val conversationTitle = __pigeon_list[1] as String?
val messages = __pigeon_list[2] as List<MessagingStyleMessage?>
val isGroupConversation = __pigeon_list[3] as Boolean
fun fromList(pigeonVar_list: List<Any?>): MessagingStyle {
val user = pigeonVar_list[0] as Person
val conversationTitle = pigeonVar_list[1] as String?
val messages = pigeonVar_list[2] as List<MessagingStyleMessage>
val isGroupConversation = pigeonVar_list[3] as Boolean
return MessagingStyle(user, conversationTitle, messages, isGroupConversation)
}
}
Expand All @@ -299,14 +294,13 @@ data class MessagingStyle (
*/
data class Notification (
val group: String,
val extras: Map<String?, String?>

) {
val extras: Map<String, String>
)
{
companion object {
@Suppress("LocalVariableName")
fun fromList(__pigeon_list: List<Any?>): Notification {
val group = __pigeon_list[0] as String
val extras = __pigeon_list[1] as Map<String?, String?>
fun fromList(pigeonVar_list: List<Any?>): Notification {
val group = pigeonVar_list[0] as String
val extras = pigeonVar_list[1] as Map<String, String>
return Notification(group, extras)
}
}
Expand All @@ -329,14 +323,13 @@ data class StatusBarNotification (
val id: Long,
val tag: String,
val notification: Notification

) {
)
{
companion object {
@Suppress("LocalVariableName")
fun fromList(__pigeon_list: List<Any?>): StatusBarNotification {
val id = __pigeon_list[0].let { num -> if (num is Int) num.toLong() else num as Long }
val tag = __pigeon_list[1] as String
val notification = __pigeon_list[2] as Notification
fun fromList(pigeonVar_list: List<Any?>): StatusBarNotification {
val id = pigeonVar_list[0] as Long
val tag = pigeonVar_list[1] as String
val notification = pigeonVar_list[2] as Notification
return StatusBarNotification(id, tag, notification)
}
}
Expand Down Expand Up @@ -370,14 +363,13 @@ data class StoredNotificationSound (
val isOwned: Boolean,
/** A `content://…` URL pointing to the sound file. */
val contentUrl: String

) {
)
{
companion object {
@Suppress("LocalVariableName")
fun fromList(__pigeon_list: List<Any?>): StoredNotificationSound {
val fileName = __pigeon_list[0] as String
val isOwned = __pigeon_list[1] as Boolean
val contentUrl = __pigeon_list[2] as String
fun fromList(pigeonVar_list: List<Any?>): StoredNotificationSound {
val fileName = pigeonVar_list[0] as String
val isOwned = pigeonVar_list[1] as Boolean
val contentUrl = pigeonVar_list[2] as String
return StoredNotificationSound(fileName, isOwned, contentUrl)
}
}
Expand All @@ -389,7 +381,7 @@ data class StoredNotificationSound (
)
}
}
private object NotificationsPigeonCodec : StandardMessageCodec() {
private open class NotificationsPigeonCodec : StandardMessageCodec() {
override fun readValueOfType(type: Byte, buffer: ByteBuffer): Any? {
return when (type) {
129.toByte() -> {
Expand Down Expand Up @@ -561,7 +553,7 @@ interface AndroidNotificationHostApi {
* https://developer.android.com/reference/kotlin/android/app/NotificationManager.html#notify
* https://developer.android.com/reference/androidx/core/app/NotificationCompat.Builder
*/
fun notify(tag: String?, id: Long, autoCancel: Boolean?, channelId: String, color: Long?, contentIntent: PendingIntent?, contentText: String?, contentTitle: String?, extras: Map<String?, String?>?, groupKey: String?, inboxStyle: InboxStyle?, isGroupSummary: Boolean?, messagingStyle: MessagingStyle?, number: Long?, smallIconResourceName: String?)
fun notify(tag: String?, id: Long, autoCancel: Boolean?, channelId: String, color: Long?, contentIntent: PendingIntent?, contentText: String?, contentTitle: String?, extras: Map<String, String>?, groupKey: String?, inboxStyle: InboxStyle?, isGroupSummary: Boolean?, messagingStyle: MessagingStyle?, number: Long?, smallIconResourceName: String?)
/**
* Wraps `androidx.core.app.NotificationManagerCompat.getActiveNotifications`,
* combined with `androidx.core.app.NotificationCompat.MessagingStyle.extractMessagingStyleFromNotification`.
Expand Down Expand Up @@ -597,7 +589,7 @@ interface AndroidNotificationHostApi {
companion object {
/** The codec used by AndroidNotificationHostApi. */
val codec: MessageCodec<Any?> by lazy {
NotificationsPigeonCodec
NotificationsPigeonCodec()
}
/** Sets up an instance of `AndroidNotificationHostApi` to handle messages through the `binaryMessenger`. */
@JvmOverloads
Expand Down Expand Up @@ -693,19 +685,19 @@ interface AndroidNotificationHostApi {
channel.setMessageHandler { message, reply ->
val args = message as List<Any?>
val tagArg = args[0] as String?
val idArg = args[1].let { num -> if (num is Int) num.toLong() else num as Long }
val idArg = args[1] as Long
val autoCancelArg = args[2] as Boolean?
val channelIdArg = args[3] as String
val colorArg = args[4].let { num -> if (num is Int) num.toLong() else num as Long? }
val colorArg = args[4] as Long?
val contentIntentArg = args[5] as PendingIntent?
val contentTextArg = args[6] as String?
val contentTitleArg = args[7] as String?
val extrasArg = args[8] as Map<String?, String?>?
val extrasArg = args[8] as Map<String, String>?
val groupKeyArg = args[9] as String?
val inboxStyleArg = args[10] as InboxStyle?
val isGroupSummaryArg = args[11] as Boolean?
val messagingStyleArg = args[12] as MessagingStyle?
val numberArg = args[13].let { num -> if (num is Int) num.toLong() else num as Long? }
val numberArg = args[13] as Long?
val smallIconResourceNameArg = args[14] as String?
val wrapped: List<Any?> = try {
api.notify(tagArg, idArg, autoCancelArg, channelIdArg, colorArg, contentIntentArg, contentTextArg, contentTitleArg, extrasArg, groupKeyArg, inboxStyleArg, isGroupSummaryArg, messagingStyleArg, numberArg, smallIconResourceNameArg)
Expand Down Expand Up @@ -759,7 +751,7 @@ interface AndroidNotificationHostApi {
channel.setMessageHandler { message, reply ->
val args = message as List<Any?>
val tagArg = args[0] as String?
val idArg = args[1].let { num -> if (num is Int) num.toLong() else num as Long }
val idArg = args[1] as Long
val wrapped: List<Any?> = try {
api.cancel(tagArg, idArg)
listOf(null)
Expand Down
13 changes: 8 additions & 5 deletions android/app/src/main/kotlin/com/zulip/flutter/ZulipPlugin.kt
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ private class AndroidNotificationHost(val context: Context)
contentIntent: PendingIntent?,
contentText: String?,
contentTitle: String?,
extras: Map<String?, String?>?,
extras: Map<String, String>?,
groupKey: String?,
inboxStyle: InboxStyle?,
isGroupSummary: Boolean?,
Expand Down Expand Up @@ -221,13 +221,13 @@ private class AndroidNotificationHost(val context: Context)
val style = NotificationCompat.MessagingStyle(toAndroidPerson(messagingStyle.user))
.setConversationTitle(messagingStyle.conversationTitle)
.setGroupConversation(messagingStyle.isGroupConversation)
messagingStyle.messages.forEach { it?.let {
messagingStyle.messages.forEach {
style.addMessage(NotificationCompat.MessagingStyle.Message(
it.text,
it.timestampMs,
toAndroidPerson(it.person),
))
} }
}
setStyle(style)
}
number?.let { setNumber(it.toInt()) }
Expand Down Expand Up @@ -268,8 +268,11 @@ private class AndroidNotificationHost(val context: Context)
Notification(
it.notification.group,
desiredExtras
.associateWith { key -> it.notification.extras.getString(key) }
.filter { entry -> entry.value != null }
.mapNotNull { key ->
it.notification.extras.getString(key)?.let { value ->
key to value
} }
.toMap()
),
)
}
Expand Down
Loading