From 9138ca771f9e0864c9d95f7be6c801544b8305b2 Mon Sep 17 00:00:00 2001 From: dijunkun Date: Fri, 16 May 2025 19:06:25 +0800 Subject: [PATCH] [fix] do not send mouse click event when cursor is on control bar and display selectable --- src/single_window/control_bar.cpp | 1 + src/single_window/render.h | 1 + src/single_window/render_callback_func.cpp | 2 +- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/single_window/control_bar.cpp b/src/single_window/control_bar.cpp index 0503ed8..e70a998 100644 --- a/src/single_window/control_bar.cpp +++ b/src/single_window/control_bar.cpp @@ -70,6 +70,7 @@ int Render::ControlBar(std::shared_ptr& props) { sizeof(remote_action), props->data_label_.c_str()); } } + props->display_selectable_hovered_ = ImGui::IsWindowHovered(); } ImGui::SetWindowFontScale(1.0f); ImGui::EndPopup(); diff --git a/src/single_window/render.h b/src/single_window/render.h index aeb70f2..7502350 100644 --- a/src/single_window/render.h +++ b/src/single_window/render.h @@ -50,6 +50,7 @@ class Render { bool streaming_ = false; bool is_control_bar_in_left_ = true; bool control_bar_hovered_ = false; + bool display_selectable_hovered_ = false; bool control_bar_expand_ = true; bool reset_control_bar_pos_ = false; bool control_window_width_is_changing_ = false; diff --git a/src/single_window/render_callback_func.cpp b/src/single_window/render_callback_func.cpp index 57f8556..5e19a36 100644 --- a/src/single_window/render_callback_func.cpp +++ b/src/single_window/render_callback_func.cpp @@ -91,7 +91,7 @@ int Render::ProcessMouseEvent(SDL_Event &event) { remote_action.m.flag = MouseFlag::move; } - if (props->control_bar_hovered_) { + if (props->control_bar_hovered_ || props->display_selectable_hovered_) { remote_action.m.flag = MouseFlag::move; } SendDataFrame(props->peer_, (const char *)&remote_action,