Transparencia por inactividad en aplicación, como seria?

Aquí puedes preguntar o compartir tus dudas y conocimientos acerca del programa
Buen día tengo una aplicación desearía preguntar , como aplicar transparencia cuando uno lo deje de ocupar o este abriendo ventanas, navegando por el sistema y se ponga con transparencia la aplicación, por inactividad.

Código aplicado para cuando regrese la actividad.

On Mouse Move
WinApi.SetWindowTrans(Application.GetWndHandle(), 200);


como seria para cuando movemos el rato fuera de la aplicación y aplique transparencia de 50? por inactividad.
capo por casualidad viste alguna solucion yo ya tengo un proyecto terminado pero necesito eso usto que en inactividad se minimize al contarrio y quede en la area de notificaciones
+1 a mi me interesa también.
si no estoy mal creo que fue Pabloko el que me dijo que en estos casos utilizara la llamada a una función
la cual es GetActiveWindow() de user32.dll para comparar cual ventana tiene el foco.
entonces puedes probar lo siguiente:
ON TIMER:
if e_ID == 1 then
result = Application.GetWndHandle() --obtenemos el numero del foco de nuestro proyecto;
resul = DLL.CallFunction("c:\\windows\\system32\\user32.dll", "GetActiveWindow", "", DLL_RETURN_TYPE_INTEGER, DLL_CALL_STDCALL); --obtenemos el numero de la ventana que tenga el foco
if result == tonumber(resul) then --y lo comparamos
WinApi.SetWindowTrans(Application.GetWndHandle(), 1000); -- si es igual aplicamos la transparencia indicando que estamos utilizando la aplicacion
else
WinApi.SetWindowTrans(Application.GetWndHandle(), 50); -- si la aplicacion no tiene el foco disminuimos la transaparencia
end
end

creo que esto te puede dar un comienzo... para lo que necesitas
suerte