fix(android): clarify channel and voice status icons
This commit is contained in:
@@ -356,6 +356,15 @@ class BridgeClient {
|
||||
/// Nickname.
|
||||
final String name;
|
||||
|
||||
/// True when this client has muted microphone/input capture.
|
||||
final bool inputMuted;
|
||||
|
||||
/// True when this client has muted speaker/output audio.
|
||||
final bool outputMuted;
|
||||
|
||||
/// True when recent inbound voice activity was observed for this client.
|
||||
final bool isSpeaking;
|
||||
|
||||
/// True for TeamSpeak ServerQuery clients.
|
||||
final bool isServerQuery;
|
||||
|
||||
@@ -363,12 +372,21 @@ class BridgeClient {
|
||||
required this.id,
|
||||
required this.channel,
|
||||
required this.name,
|
||||
required this.inputMuted,
|
||||
required this.outputMuted,
|
||||
required this.isSpeaking,
|
||||
required this.isServerQuery,
|
||||
});
|
||||
|
||||
@override
|
||||
int get hashCode =>
|
||||
id.hashCode ^ channel.hashCode ^ name.hashCode ^ isServerQuery.hashCode;
|
||||
id.hashCode ^
|
||||
channel.hashCode ^
|
||||
name.hashCode ^
|
||||
inputMuted.hashCode ^
|
||||
outputMuted.hashCode ^
|
||||
isSpeaking.hashCode ^
|
||||
isServerQuery.hashCode;
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) =>
|
||||
@@ -378,6 +396,9 @@ class BridgeClient {
|
||||
id == other.id &&
|
||||
channel == other.channel &&
|
||||
name == other.name &&
|
||||
inputMuted == other.inputMuted &&
|
||||
outputMuted == other.outputMuted &&
|
||||
isSpeaking == other.isSpeaking &&
|
||||
isServerQuery == other.isServerQuery;
|
||||
}
|
||||
|
||||
|
||||
@@ -1172,13 +1172,16 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
||||
BridgeClient dco_decode_bridge_client(dynamic raw) {
|
||||
// Codec=Dco (DartCObject based), see doc to use other codecs
|
||||
final arr = raw as List<dynamic>;
|
||||
if (arr.length != 4)
|
||||
throw Exception('unexpected arr length: expect 4 but see ${arr.length}');
|
||||
if (arr.length != 7)
|
||||
throw Exception('unexpected arr length: expect 7 but see ${arr.length}');
|
||||
return BridgeClient(
|
||||
id: dco_decode_u_64(arr[0]),
|
||||
channel: dco_decode_u_64(arr[1]),
|
||||
name: dco_decode_String(arr[2]),
|
||||
isServerQuery: dco_decode_bool(arr[3]),
|
||||
inputMuted: dco_decode_bool(arr[3]),
|
||||
outputMuted: dco_decode_bool(arr[4]),
|
||||
isSpeaking: dco_decode_bool(arr[5]),
|
||||
isServerQuery: dco_decode_bool(arr[6]),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1535,11 +1538,17 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
|
||||
var var_id = sse_decode_u_64(deserializer);
|
||||
var var_channel = sse_decode_u_64(deserializer);
|
||||
var var_name = sse_decode_String(deserializer);
|
||||
var var_inputMuted = sse_decode_bool(deserializer);
|
||||
var var_outputMuted = sse_decode_bool(deserializer);
|
||||
var var_isSpeaking = sse_decode_bool(deserializer);
|
||||
var var_isServerQuery = sse_decode_bool(deserializer);
|
||||
return BridgeClient(
|
||||
id: var_id,
|
||||
channel: var_channel,
|
||||
name: var_name,
|
||||
inputMuted: var_inputMuted,
|
||||
outputMuted: var_outputMuted,
|
||||
isSpeaking: var_isSpeaking,
|
||||
isServerQuery: var_isServerQuery,
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user