setHandRaised method

void setHandRaised(
  1. RemoteActivityData remoteData
)

Implementation

void setHandRaised(RemoteActivityData remoteData) {
  final id = remoteData.identity?.identity ?? "";

  if (remoteData.action == "raise_hand") {
    // prevent duplicate
    if (!_raisedHandMap.containsKey(id) || _raisedHandMap[id] == false) {
      _raisedHandMap[id] = true;

      _raisedHandQueue.add(
        RaisedHand(
          identity: id,
          timeStamp: remoteData.timeStamp ?? DateTime.now().millisecondsSinceEpoch,
        ),
      );
    }
  } else {
    _raisedHandMap[id] = false;
    _raisedHandQueue.removeWhere((e) => e.identity == id);
  }

  notifyListeners();
}