File tree Expand file tree Collapse file tree 1 file changed +31
-0
lines changed Expand file tree Collapse file tree 1 file changed +31
-0
lines changed Original file line number Diff line number Diff line change @@ -122,6 +122,37 @@ class Unreads extends ChangeNotifier {
122
122
123
123
final int selfUserId;
124
124
125
+ int countInNarrow (Narrow narrow) {
126
+ switch (narrow) {
127
+ case DmNarrow ():
128
+ return dms[narrow]? .length ?? 0 ;
129
+ case AllMessagesNarrow ():
130
+ int c = 0 ;
131
+ for (final model in dms.values) {
132
+ c = c + model.length;
133
+ }
134
+ for (final streamData in streams.values) {
135
+ for (final model in streamData.values) {
136
+ c = c + model.length;
137
+ }
138
+ }
139
+ return c;
140
+ case StreamNarrow ():
141
+ final streamData = streams[narrow.streamId];
142
+ if (streamData == null ) return 0 ;
143
+ int c = 0 ;
144
+ for (final model in streamData.values) {
145
+ c = c + model.length;
146
+ }
147
+ return c;
148
+ case TopicNarrow ():
149
+ final streamData = streams[narrow.streamId];
150
+ if (streamData == null ) return 0 ;
151
+ final model = streamData[narrow.topic];
152
+ return model? .length ?? 0 ;
153
+ }
154
+ }
155
+
125
156
void handleMessageEvent (MessageEvent event) {
126
157
final message = event.message;
127
158
if (message.flags.contains (MessageFlag .read)) {
You can’t perform that action at this time.
0 commit comments