refine hidden window logic for chatgui
Some checks are pending
ContinuousDelivery / linux-ubuntu (push) Waiting to run
ContinuousDelivery / android (map[ndk_abi:arm64-v8a vcpkg_toolkit:arm64-android]) (push) Waiting to run
ContinuousDelivery / android (map[ndk_abi:armeabi-v7a vcpkg_toolkit:arm-neon-android]) (push) Waiting to run
ContinuousDelivery / android (map[ndk_abi:x86_64 vcpkg_toolkit:x64-android]) (push) Waiting to run
ContinuousDelivery / windows (push) Waiting to run
ContinuousDelivery / windows-asan (push) Waiting to run
ContinuousDelivery / release (push) Blocked by required conditions
ContinuousIntegration / linux (push) Waiting to run
ContinuousIntegration / android (map[ndk_abi:arm64-v8a vcpkg_toolkit:arm64-android]) (push) Waiting to run
ContinuousIntegration / android (map[ndk_abi:armeabi-v7a vcpkg_toolkit:arm-neon-android]) (push) Waiting to run
ContinuousIntegration / android (map[ndk_abi:x86_64 vcpkg_toolkit:x64-android]) (push) Waiting to run
ContinuousIntegration / macos (push) Waiting to run
ContinuousIntegration / windows (push) Waiting to run

This commit is contained in:
Green Sky 2025-01-10 17:33:35 +01:00
parent 4efdbf2e84
commit a417f9059e
No known key found for this signature in database
3 changed files with 8 additions and 3 deletions

View File

@ -272,12 +272,17 @@ ChatGui4::~ChatGui4(void) {
//}
}
float ChatGui4::render(float time_delta) {
float ChatGui4::render(float time_delta, bool window_hidden) {
_fss.render();
_sip.render(time_delta);
_b_tc.update();
_b_tc.workLoadQueue();
if (window_hidden) {
// annoying, but all of the above needs to continue while not rendering
return 1000.f;
}
const ImGuiViewport* viewport = ImGui::GetMainViewport();
ImGui::SetNextWindowPos(viewport->WorkPos);
ImGui::SetNextWindowSize(viewport->WorkSize);

View File

@ -75,7 +75,7 @@ class ChatGui4 : public ObjectStoreEventI {
~ChatGui4(void);
public:
float render(float time_delta);
float render(float time_delta, bool window_hidden);
public:
void sendFilePath(std::string_view file_path);

View File

@ -360,7 +360,7 @@ Screen* MainScreen::render(float time_delta, bool&) {
si.render(time_delta);
const float cg_interval = cg.render(time_delta); // render
const float cg_interval = cg.render(time_delta, _window_hidden); // render
sw.render(); // render
osui.render();
tuiu.render(); // render