mirror of
https://github.com/HChaZZY/PiliPlus.git
synced 2025-12-06 09:13:48 +08:00
mod: show dm merged count
related #359 Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
@@ -1,6 +1,5 @@
|
|||||||
import 'package:PiliPlus/grpc/dm/v1/dm.pb.dart';
|
import 'package:PiliPlus/grpc/dm/v1/dm.pb.dart';
|
||||||
import 'package:PiliPlus/grpc/grpc_repo.dart';
|
import 'package:PiliPlus/grpc/grpc_repo.dart';
|
||||||
import 'package:PiliPlus/utils/extension.dart';
|
|
||||||
import 'package:dio/dio.dart';
|
import 'package:dio/dio.dart';
|
||||||
import 'index.dart';
|
import 'index.dart';
|
||||||
|
|
||||||
@@ -18,8 +17,20 @@ class DanmakuHttp {
|
|||||||
return DmSegMobileReply();
|
return DmSegMobileReply();
|
||||||
}
|
}
|
||||||
DmSegMobileReply data = response['data'];
|
DmSegMobileReply data = response['data'];
|
||||||
if (mergeDanmaku) {
|
if (mergeDanmaku && data.elems.isNotEmpty) {
|
||||||
data.elems.unique((item) => item.content);
|
final Map counts = <String, int>{};
|
||||||
|
data.elems.retainWhere((item) {
|
||||||
|
int? count = counts[item.content];
|
||||||
|
counts[item.content] = count != null ? count + 1 : 1;
|
||||||
|
return count == null;
|
||||||
|
});
|
||||||
|
for (DanmakuElem item in data.elems) {
|
||||||
|
item.clearAttr();
|
||||||
|
final count = counts[item.content];
|
||||||
|
if (count != 1) {
|
||||||
|
item.attr = count;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -117,6 +117,9 @@ class _PlDanmakuState extends State<PlDanmaku> {
|
|||||||
e.colorful == DmColorfulType.VipGradualColor
|
e.colorful == DmColorfulType.VipGradualColor
|
||||||
? true
|
? true
|
||||||
: null,
|
: null,
|
||||||
|
count: widget.playerController.mergeDanmaku && e.hasAttr()
|
||||||
|
? e.attr
|
||||||
|
: null,
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -252,7 +252,7 @@ packages:
|
|||||||
description:
|
description:
|
||||||
path: "."
|
path: "."
|
||||||
ref: main
|
ref: main
|
||||||
resolved-ref: ecf4a8457ec9d128095240d96dbfa5cc53b6cf6b
|
resolved-ref: "77c76f6595c6862cc623b036718173619c02af75"
|
||||||
url: "https://github.com/bggRGjQaUbCoE/canvas_danmaku.git"
|
url: "https://github.com/bggRGjQaUbCoE/canvas_danmaku.git"
|
||||||
source: git
|
source: git
|
||||||
version: "0.2.6"
|
version: "0.2.6"
|
||||||
|
|||||||
Reference in New Issue
Block a user