[feat] use SendReliableDataFrame() instead of SendDataFrame()

This commit is contained in:
dijunkun
2025-12-19 01:46:16 +08:00
parent 5066fcda48
commit a967dc72d7
4 changed files with 17 additions and 17 deletions

View File

@@ -1341,8 +1341,8 @@ void Render::MainLoop() {
remote_action.i.host_name_size = host_name.size();
std::string msg = remote_action.to_json();
int ret = SendDataFrame(peer_, msg.data(), msg.size(),
data_label_.c_str(), false);
int ret = SendReliableDataFrame(peer_, msg.data(), msg.size(),
data_label_.c_str());
FreeRemoteAction(remote_action);
if (0 == ret) {
need_to_send_host_info_ = false;

View File

@@ -33,8 +33,8 @@ int Render::SendKeyCommand(int key_code, bool is_down) {
if (props->connection_status_ == ConnectionStatus::Connected) {
std::string msg = remote_action.to_json();
if (props->peer_) {
SendDataFrame(props->peer_, msg.c_str(), msg.size(),
props->data_label_.c_str(), false);
SendReliableDataFrame(props->peer_, msg.c_str(), msg.size(),
props->data_label_.c_str());
}
}
}
@@ -104,8 +104,8 @@ int Render::ProcessMouseEvent(const SDL_Event& event) {
std::string msg = remote_action.to_json();
if (props->peer_) {
SendDataFrame(props->peer_, msg.c_str(), msg.size(),
props->data_label_.c_str(), false);
SendReliableDataFrame(props->peer_, msg.c_str(), msg.size(),
props->data_label_.c_str());
}
} else if (SDL_EVENT_MOUSE_WHEEL == event.type &&
last_mouse_event.button.x >= props->stream_render_rect_.x &&
@@ -151,8 +151,8 @@ int Render::ProcessMouseEvent(const SDL_Event& event) {
std::string msg = remote_action.to_json();
if (props->peer_) {
SendDataFrame(props->peer_, msg.c_str(), msg.size(),
props->data_label_.c_str(), false);
SendReliableDataFrame(props->peer_, msg.c_str(), msg.size(),
props->data_label_.c_str());
}
}
}
@@ -495,12 +495,12 @@ void Render::OnConnectionStatusCb(ConnectionStatus status, const char* user_id,
render->need_to_send_host_info_ = true;
render->start_screen_capturer_ = true;
render->start_speaker_capturer_ = true;
#ifdef CROSSDESK_DEBUG
// #ifdef CROSSDESK_DEBUG
render->start_mouse_controller_ = false;
render->start_keyboard_capturer_ = false;
#else
// #else
render->start_mouse_controller_ = true;
#endif
// #endif
if (std::all_of(render->connection_status_.begin(),
render->connection_status_.end(), [](const auto& kv) {
return kv.first.find("web") != std::string::npos;

View File

@@ -92,8 +92,8 @@ int Render::ControlBar(std::shared_ptr<SubStreamWindowProperties>& props) {
remote_action.d = i;
if (props->connection_status_ == ConnectionStatus::Connected) {
std::string msg = remote_action.to_json();
SendDataFrame(props->peer_, msg.c_str(), msg.size(),
props->data_label_.c_str(), false);
SendReliableDataFrame(props->peer_, msg.c_str(), msg.size(),
props->data_label_.c_str());
}
}
props->display_selectable_hovered_ = ImGui::IsWindowHovered();
@@ -173,8 +173,8 @@ int Render::ControlBar(std::shared_ptr<SubStreamWindowProperties>& props) {
remote_action.type = ControlType::audio_capture;
remote_action.a = props->audio_capture_button_pressed_;
std::string msg = remote_action.to_json();
SendDataFrame(props->peer_, msg.c_str(), msg.size(),
props->data_label_.c_str(), false);
SendReliableDataFrame(props->peer_, msg.c_str(), msg.size(),
props->data_label_.c_str());
}
}
@@ -214,7 +214,7 @@ int Render::ControlBar(std::shared_ptr<SubStreamWindowProperties>& props) {
int ret = sender.SendFile(
file_path, file_path.filename().string(),
[peer, file_label](const char* buf, size_t sz) -> int {
return SendDataFrame(peer, buf, sz, file_label.c_str(), true);
return SendReliableDataFrame(peer, buf, sz, file_label.c_str());
});
if (ret != 0) {