Merge pull request #5469 from 21pages/ab2
filter tags with union, not intersection
This commit is contained in:
commit
9383d4c97c
@ -66,7 +66,7 @@ class _PeerCardState extends State<_PeerCard>
|
|||||||
final name =
|
final name =
|
||||||
'${peer.username}${peer.username.isNotEmpty && peer.hostname.isNotEmpty ? '@' : ''}${peer.hostname}';
|
'${peer.username}${peer.username.isNotEmpty && peer.hostname.isNotEmpty ? '@' : ''}${peer.hostname}';
|
||||||
final PeerTabModel peerTabModel = Provider.of(context);
|
final PeerTabModel peerTabModel = Provider.of(context);
|
||||||
return Card(
|
final child = Card(
|
||||||
margin: EdgeInsets.symmetric(horizontal: 2),
|
margin: EdgeInsets.symmetric(horizontal: 2),
|
||||||
child: GestureDetector(
|
child: GestureDetector(
|
||||||
onTap: () {
|
onTap: () {
|
||||||
@ -115,6 +115,23 @@ class _PeerCardState extends State<_PeerCard>
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
)));
|
)));
|
||||||
|
final colors = _frontN(peer.tags, 25).map((e) => str2color2(e)).toList();
|
||||||
|
return Tooltip(
|
||||||
|
message: peer.tags.isNotEmpty
|
||||||
|
? '${translate('Tags')}: ${peer.tags.join(', ')}'
|
||||||
|
: '',
|
||||||
|
child: Stack(children: [
|
||||||
|
child,
|
||||||
|
if (colors.isNotEmpty)
|
||||||
|
Positioned(
|
||||||
|
top: 2,
|
||||||
|
right: 10,
|
||||||
|
child: CustomPaint(
|
||||||
|
painter: TagPainter(radius: 3, colors: colors),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
]),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget _buildDesktop() {
|
Widget _buildDesktop() {
|
||||||
|
@ -421,15 +421,12 @@ class AddressBookPeersView extends BasePeersView {
|
|||||||
if (selectedTags.isEmpty) {
|
if (selectedTags.isEmpty) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (idents.isEmpty) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
for (final tag in selectedTags) {
|
for (final tag in selectedTags) {
|
||||||
if (!idents.contains(tag)) {
|
if (idents.contains(tag)) {
|
||||||
return false;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user