From 3115084f814cfc8ef0931b6491822d017d9b06c7 Mon Sep 17 00:00:00 2001 From: Guo Rui Date: Tue, 14 Jul 2009 00:08:07 +0800 Subject: [PATCH] Implement display.idle_timeout interface, currently write-only --- src/lua.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/lua.c b/src/lua.c index 866c1df..3aa7d0b 100644 --- a/src/lua.c +++ b/src/lua.c @@ -788,7 +788,26 @@ static const luaL_reg display_metamethods[] = { {0, 0} }; +static int +display_new_idle_timeout(lua_State *L) +{ + struct display *disp = check_display(L, 1); + int timeout = luaL_checkinteger(L, 3) * 1000; + struct event *ev = &disp->d_idleev; + if (timeout > 0) + { + SetTimeout(ev, timeout); + if (!ev->queued) + evenq(ev); + } + else + evdeq(ev); + + return 0; +} + static const struct Xet_reg display_setters[] = { + {"idle_timeout", 0, 0, display_new_idle_timeout/*absolute setter*/}, {0, 0} }; -- 2.11.4.GIT