From cbce1d961ed4a3da99ea8aedc351c047ee2a305d Mon Sep 17 00:00:00 2001 From: George Hazan Date: Mon, 18 Jun 2018 18:52:42 +0300 Subject: fixes #1427 (Miranda doesn't set status back when returning from idle) --- src/core/stdautoaway/src/idle.cpp | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) (limited to 'src/core') diff --git a/src/core/stdautoaway/src/idle.cpp b/src/core/stdautoaway/src/idle.cpp index 4c15eede06..7e6143a428 100644 --- a/src/core/stdautoaway/src/idle.cpp +++ b/src/core/stdautoaway/src/idle.cpp @@ -45,22 +45,26 @@ static int IdleObject_IsUserIdle() static void CALLBACK IdleTimer(HWND, UINT, UINT_PTR idEvent, DWORD) { - if (g_hTimer == idEvent) { - if (g_plugin.bIdleCheck && IdleObject_IsUserIdle()) - Idle_Enter(1); + if (g_hTimer != idEvent) + return; - else if (g_plugin.bIdleOnSaver && IsScreenSaverRunning()) - Idle_Enter(2); + if (g_plugin.bIdleCheck && IdleObject_IsUserIdle()) + Idle_Enter(1); - else if (g_plugin.bIdleOnFullScr && IsFullScreen()) - Idle_Enter(3); + else if (g_plugin.bIdleOnSaver && IsScreenSaverRunning()) + Idle_Enter(2); - else if (g_plugin.bIdleOnLock && IsWorkstationLocked()) - Idle_Enter(4); + else if (g_plugin.bIdleOnFullScr && IsFullScreen()) + Idle_Enter(3); - else if (g_plugin.bIdleOnTerminal && IsTerminalDisconnected()) - Idle_Enter(5); - } + else if (g_plugin.bIdleOnLock && IsWorkstationLocked()) + Idle_Enter(4); + + else if (g_plugin.bIdleOnTerminal && IsTerminalDisconnected()) + Idle_Enter(5); + + else // not idle + Idle_Enter(-1); } void IdleObject_Create() -- cgit v1.2.3