Commit graph

25 commits

Author SHA1 Message Date
Mathias Gumz
948e63eb60 detect minute-based strftime-formats (again)
the lag / skipping of the clock was not caused by faulty timer code
on fluxbox's side but by the behavior and inner workings of time().
since this is fixed now (913244789f) we can now rollback ec7fe513c8
and detect strftime-formats which need intervals of seconds or minutes.

minor: the small change to FbTk::Timer::setTimeout() reduces one
start() / stop() cycle for a running timer.
2014-05-12 12:17:00 +02:00
Sami Kerola
73b7958770 build-sys: include config.h to all files using automake
Do not try to be too smart which compilations need config.h, as most of
them will simply because of the config.h has information about system
capabilities.
2013-05-26 10:38:10 +01:00
Mathias Gumz
34744f504e Cleanup 2013-02-10 11:08:05 +01:00
Mathias Gumz
33161595f4 Simplifies and fix bugs in FbTk::Timer
* Calling Timer::setTimeout() from within Timer::start() might lead to ugly
  behavior (as experienced in bugs #3590078, #3600143, etc; see commit
  4d307dcd10, fixes the problem partially).

* Stop a timer first, then call the handler (via Timer::fireTimeout()). A
  given handler might call Timer::start() again, which (re)adds the Timer
  to the control list .. the following Timer::stop() would remove it again.

* Use 'm_start' as indicator if timer is running.

* Move the (now quite short) code of ::addTimer / ::removeTimer
  into the Timer::start() and Timer::stop() functions.
2013-01-15 21:40:33 +01:00
Mathias Gumz
2f279e96b1 Fix regression: switch back to microseconds for DelayCmd 2012-09-14 08:51:42 +02:00
Mathias Gumz
541c8c407b changed timing functions to use a monotonic increasing clock
gettimeofday() is subject to be changed on daylight-saving or to ntp-related
(think leap-seconds). even worse, it is subject to be changed BACK in time. this
is hard to fix correctly (see commit 45726d3016 and bug #3560509). it is
irrelevant for timers to know the nano-seconds since the epoch anyways.
2012-08-28 10:51:55 +02:00
Pavel Labath
e67b9a6f83 Upgrade FbTk::Timer so it can take an arbitrary functor as a parameter 2011-09-14 19:39:11 +02:00
Pavel Labath
cfcc4d44aa FbTk::Timer accepts Slots instead of Commands as the former are more general 2011-09-14 19:39:10 +02:00
Mathias Gumz
e685117941 simpler to use FbTk/Timer api 2010-09-09 12:47:38 +02:00
Mathias Gumz
615e9cec32 compile fix: FD_ZERO (sys/select.h) on solaris wants to use memset(); closes #2997117 2010-05-06 21:19:31 +02:00
Mark Tiefenbruck
9f2f65a698 make FbTk::Command a template class, split parsing information out of ObjectRegistry 2008-01-10 23:41:22 -08:00
Mathias Gumz
e1f362ae76 'inline' in class declaration is implicitly inline 2007-12-29 22:38:53 +01:00
Mark Tiefenbruck
8e96ffb74b moved DelayedCmd from Screen.cc to FbTk/Timer.cc, added it to the keys file 2007-12-28 01:19:33 -08:00
mathias
6ac57655d9 basicly cosmetic changes, patch by slava semushin 2007-04-17 07:52:40 +00:00
simonb
f6140840f8 fix timer issues (esp clock not updating on multiple screens) 2006-06-19 05:04:42 +00:00
simonb
4c011a0a12 don't check the clock so often... 2006-04-18 15:17:11 +00:00
mathias
5e9814e091 fix to solve compileproblems under freebsd4 2005-01-24 20:02:03 +00:00
mathias
6b8fca511c copyright date 2005-01-24 18:02:34 +00:00
mathias
6458b1b485 cosmetic, double #include of the same header 2004-12-18 01:10:33 +00:00
rathnor
d17bf39a43 add autoconf check for std c++ headers 2004-08-31 15:26:40 +00:00
fluxgen
72b878f78c fixed some icc warnings 2003-12-16 17:06:52 +00:00
rathnor
c516aa13a1 fix reading of auto raise delay 2003-10-05 06:28:47 +00:00
fluxgen
af93496614 executing a command on timeout instead of calling a TimeoutHandler 2003-08-11 15:58:34 +00:00
fluxgen
483f82fbb8 added a few headers 2003-02-15 01:44:49 +00:00
fluxgen
7dd4823340 moved from fluxbox to fbtk 2003-01-09 21:09:49 +00:00