applied patch to synchronize clock by wim.speek@orange.nl git-svn-id: http://tint2.googlecode.com/svn/trunk@392 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
1 files changed,
16 insertions(+),
3 deletions(-)
jump to
M
src/clock/clock.c
→
src/clock/clock.c
@@ -53,7 +53,7 @@ int clock_enabled;
static timeout* clock_timeout=0; -void update_clocks(void* arg) +void update_clocks_sec(void* arg) { gettimeofday(&time_clock, 0); int i;@@ -62,6 +62,19 @@ for (i=0 ; i < nb_panel ; i++)
panel1[i].clock.area.resize = 1; } panel_refresh = 1; +} + +void update_clocks_min(void* arg) +{ + gettimeofday(&time_clock, 0); + if (time_clock.tv_sec % 60 == 0) { + int i; + if (time1_format) { + for (i=0 ; i < nb_panel ; i++) + panel1[i].clock.area.resize = 1; + } + panel_refresh = 1; + } } struct tm* clock_gettime_for_tz(const char* timezone) {@@ -87,9 +100,9 @@ void init_clock()
{ if(time1_format && clock_timeout==0) { if (strchr(time1_format, 'S') || strchr(time1_format, 'T') || strchr(time1_format, 'r')) - clock_timeout = add_timeout(10, 1000, update_clocks, 0); + clock_timeout = add_timeout(10, 1000, update_clocks_sec, 0); else - clock_timeout = add_timeout(10, 60000, update_clocks, 0); + clock_timeout = add_timeout(10, 1000, update_clocks_min, 0); } }