mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-03-29 22:20:48 +00:00
overlays: fix non-interactive dialog loops
This commit is contained in:
parent
c9aee27d48
commit
d94d094a7e
@ -205,9 +205,10 @@ namespace rsx
|
|||||||
}
|
}
|
||||||
|
|
||||||
this->on_close = std::move(on_close);
|
this->on_close = std::move(on_close);
|
||||||
if (interactive)
|
|
||||||
|
if (is_blocking)
|
||||||
{
|
{
|
||||||
if (is_blocking)
|
if (interactive)
|
||||||
{
|
{
|
||||||
if (auto error = run_input_loop())
|
if (auto error = run_input_loop())
|
||||||
{
|
{
|
||||||
@ -217,14 +218,37 @@ namespace rsx
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
thread_ctrl::spawn("dialog input thread", [&]
|
while (!exit)
|
||||||
|
{
|
||||||
|
refresh();
|
||||||
|
|
||||||
|
// Only update the screen at about 60fps since updating it everytime slows down the process
|
||||||
|
std::this_thread::sleep_for(16ms);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
thread_ctrl::spawn("dialog input thread", [&]
|
||||||
|
{
|
||||||
|
if (interactive)
|
||||||
{
|
{
|
||||||
if (auto error = run_input_loop())
|
if (auto error = run_input_loop())
|
||||||
{
|
{
|
||||||
LOG_ERROR(RSX, "Dialog input loop exited with error code=%d", error);
|
LOG_ERROR(RSX, "Dialog input loop exited with error code=%d", error);
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
}
|
else
|
||||||
|
{
|
||||||
|
while (!exit)
|
||||||
|
{
|
||||||
|
refresh();
|
||||||
|
|
||||||
|
// Only update the screen at about 60fps since updating it everytime slows down the process
|
||||||
|
std::this_thread::sleep_for(16ms);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
return CELL_OK;
|
return CELL_OK;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user