fix(windows): resolve disappearing cursor after KVM switch (#4407)
This commit is contained in:
@@ -610,6 +610,8 @@ namespace platf {
|
|||||||
};
|
};
|
||||||
void adjust_thread_priority(thread_priority_e priority);
|
void adjust_thread_priority(thread_priority_e priority);
|
||||||
|
|
||||||
|
void enable_mouse_keys();
|
||||||
|
|
||||||
// Allow OS-specific actions to be taken to prepare for streaming
|
// Allow OS-specific actions to be taken to prepare for streaming
|
||||||
void streaming_will_start();
|
void streaming_will_start();
|
||||||
void streaming_will_stop();
|
void streaming_will_stop();
|
||||||
|
|||||||
@@ -327,6 +327,10 @@ namespace platf {
|
|||||||
// Unimplemented
|
// Unimplemented
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void enable_mouse_keys() {
|
||||||
|
// Unimplemented
|
||||||
|
}
|
||||||
|
|
||||||
void streaming_will_start() {
|
void streaming_will_start() {
|
||||||
// Nothing to do
|
// Nothing to do
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -214,6 +214,10 @@ namespace platf {
|
|||||||
// Unimplemented
|
// Unimplemented
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void enable_mouse_keys() {
|
||||||
|
// Unimplemented
|
||||||
|
}
|
||||||
|
|
||||||
void streaming_will_start() {
|
void streaming_will_start() {
|
||||||
// Nothing to do
|
// Nothing to do
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1133,7 +1133,10 @@ namespace platf {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
enable_mouse_keys();
|
||||||
|
}
|
||||||
|
|
||||||
|
void enable_mouse_keys() {
|
||||||
// If there is no mouse connected, enable Mouse Keys to force the cursor to appear
|
// If there is no mouse connected, enable Mouse Keys to force the cursor to appear
|
||||||
if (!GetSystemMetrics(SM_MOUSEPRESENT)) {
|
if (!GetSystemMetrics(SM_MOUSEPRESENT)) {
|
||||||
BOOST_LOG(info) << "A mouse was not detected. Sunshine will enable Mouse Keys while streaming to force the mouse cursor to appear.";
|
BOOST_LOG(info) << "A mouse was not detected. Sunshine will enable Mouse Keys while streaming to force the mouse cursor to appear.";
|
||||||
|
|||||||
@@ -1977,6 +1977,10 @@ namespace video {
|
|||||||
}
|
}
|
||||||
|
|
||||||
session->request_normal_frame();
|
session->request_normal_frame();
|
||||||
|
|
||||||
|
// While streaming check to see if the mouse is present and enable Mouse Keys to force the cursor to appear
|
||||||
|
// This is useful for KVM switch scenarios where mouse may disappear during streaming
|
||||||
|
platf::enable_mouse_keys();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user