From 9ff9e315a03ee49732d81dfc88bb0439d9fe3b05 Mon Sep 17 00:00:00 2001 From: souldbminersmwc Date: Fri, 24 Apr 2026 16:42:59 -0400 Subject: [PATCH] hocclk: improve kip saving mechanism --- .../hoc-clk/overlay/src/ui/gui/misc_gui.cpp | 22 +++++++++++-------- Source/hoc-clk/overlay/src/ui/gui/misc_gui.h | 1 + 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/Source/hoc-clk/overlay/src/ui/gui/misc_gui.cpp b/Source/hoc-clk/overlay/src/ui/gui/misc_gui.cpp index 4a4e2684..0f882b1e 100644 --- a/Source/hoc-clk/overlay/src/ui/gui/misc_gui.cpp +++ b/Source/hoc-clk/overlay/src/ui/gui/misc_gui.cpp @@ -71,6 +71,10 @@ MiscGui::MiscGui() MiscGui::~MiscGui() { + if (shouldSaveKip) { + sendKipData(); + shouldSaveKip = false; + } if (s_kipThreadPending) { threadWaitForExit(&s_kipThread); threadClose(&s_kipThread); @@ -94,7 +98,7 @@ void MiscGui::addConfigToggle(HocClkConfigValue configVal, const char* altName, if (R_FAILED(rc)) { FatalGui::openWithResultCode("hocclkIpcSetConfigValues", rc); } else if (kip) { - sendKipData(); + shouldSaveKip = true; } this->lastContextUpdate = armGetSystemTick(); }); @@ -121,7 +125,7 @@ void MiscGui::addConfigTrackbar(HocClkConfigValue configVal, const char* altName this->configList->values[configVal] = v; Result rc = hocclkIpcSetConfigValues(this->configList); if (R_FAILED(rc)) FatalGui::openWithResultCode("hocclkIpcSetConfigValues", rc); - if (kip) sendKipData(); + if (kip) shouldSaveKip = true; }); this->listElement->addItem(bar); } @@ -142,7 +146,7 @@ void MiscGui::addMappedConfigTrackbar(HocClkConfigValue configVal, const char* a this->configList->values[configVal] = vals[idx]; Result rc = hocclkIpcSetConfigValues(this->configList); if (R_FAILED(rc)) FatalGui::openWithResultCode("hocclkIpcSetConfigValues", rc); - if (kip) sendKipData(); + if (kip) shouldSaveKip = true; }); this->listElement->addItem(bar); } @@ -218,7 +222,7 @@ void MiscGui::addConfigButton(HocClkConfigValue configVal, return false; } if (kip) { - sendKipData(); + shouldSaveKip = true; } this->lastContextUpdate = armGetSystemTick(); return true; @@ -243,7 +247,7 @@ void MiscGui::addConfigButton(HocClkConfigValue configVal, return false; } if (kip) { - sendKipData(); + shouldSaveKip = true; } this->lastContextUpdate = armGetSystemTick(); return true; @@ -336,7 +340,7 @@ void MiscGui::addConfigButtonS(HocClkConfigValue configVal, return false; } if (kip) { - sendKipData(); + shouldSaveKip = true; } this->lastContextUpdate = armGetSystemTick(); return true; @@ -361,7 +365,7 @@ void MiscGui::addConfigButtonS(HocClkConfigValue configVal, return false; } if (kip) { - sendKipData(); + shouldSaveKip = true; } this->lastContextUpdate = armGetSystemTick(); return true; @@ -1305,7 +1309,7 @@ protected: FatalGui::openWithResultCode("hocclkIpcSetConfigValues", rc); return false; } - sendKipData(); + shouldSaveKip = true; this->lastContextUpdate = armGetSystemTick(); return true; }, @@ -1365,7 +1369,7 @@ protected: FatalGui::openWithResultCode("hocclkIpcSetConfigValues", rc); return false; } - sendKipData(); + shouldSaveKip = true; this->lastContextUpdate = armGetSystemTick(); return true; }, diff --git a/Source/hoc-clk/overlay/src/ui/gui/misc_gui.h b/Source/hoc-clk/overlay/src/ui/gui/misc_gui.h index d824192e..1f2b9ef4 100644 --- a/Source/hoc-clk/overlay/src/ui/gui/misc_gui.h +++ b/Source/hoc-clk/overlay/src/ui/gui/misc_gui.h @@ -77,4 +77,5 @@ protected: tsl::elm::ToggleListItem* enabledToggle; u8 frameCounter = 60; + bool shouldSaveKip = false; }; \ No newline at end of file