[fix] reset to initial monitor on connection close via ResetToInitialMonitor to fix black screen

This commit is contained in:
dijunkun
2026-03-02 15:42:44 +08:00
parent b13dac2093
commit 33d51b8ce5
15 changed files with 111 additions and 4 deletions

View File

@@ -34,6 +34,7 @@ class ScreenCapturerWgc : public ScreenCapturer,
std::vector<DisplayInfo> GetDisplayInfoList() { return display_info_list_; }
int SwitchTo(int monitor_index);
int ResetToInitialMonitor() override;
void OnFrame(const WgcSession::wgc_session_frame& frame, int id);
@@ -45,6 +46,7 @@ class ScreenCapturerWgc : public ScreenCapturer,
MONITORINFOEX monitor_info_;
std::vector<DisplayInfo> display_info_list_;
int monitor_index_ = 0;
int initial_monitor_index_ = 0;
private:
class WgcSessionInfo {
@@ -72,4 +74,4 @@ class ScreenCapturerWgc : public ScreenCapturer,
std::mutex frame_mutex_;
};
} // namespace crossdesk
#endif
#endif