diff options
author | Alessandro Guido <ag@alessandroguido.name> | 2010-12-03 11:55:00 +0100 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2010-12-06 11:15:33 +1000 |
commit | 6f61aa776332b99e0d3cc035bff11d87d2735a47 (patch) | |
tree | 81783cb68d26391d8c1182738cb4bf7413d0fdcb | |
parent | 4d22aa06fd2b53e11233ebd3a25045cd96bf67ab (diff) |
syndaemon: decouple background mode from quietness
syndaemon currently outputs lots of stuff when not running in background mode.
However, current init daemons and session managers can manage to launch the
daemon in background without "-b" just fine (if not better), by doing the
fork() themselves. Indeed, if one uses that setup, ie. by having syndaemon
launched by GNOME at login, it gets the ~/.xsession-errors file spammed by
Enable/Disabled messages.
This patch fixes this by introducing a new verbose (-v) flag that enables those
messages and makes syndaemon quiet by default.
Signed-off-by: Alessandro Guido <ag@alessandroguido.name>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r-- | tools/syndaemon.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/tools/syndaemon.c b/tools/syndaemon.c index d06fe5f..0309fb5 100644 --- a/tools/syndaemon.c +++ b/tools/syndaemon.c @@ -64,6 +64,7 @@ static XDevice *dev; static Atom touchpad_off_prop; static TouchpadState previous_state; static TouchpadState disable_state = TouchpadOff; +static int verbose; #define KEYMAP_SIZE 32 static unsigned char keyboard_mask[KEYMAP_SIZE]; @@ -82,6 +83,7 @@ usage(void) fprintf(stderr, " -k Ignore modifier keys when monitoring keyboard activity.\n"); fprintf(stderr, " -K Like -k but also ignore Modifier+Key combos.\n"); fprintf(stderr, " -R Use the XRecord extension.\n"); + fprintf(stderr, " -v Print diagnostic messages.\n"); exit(1); } @@ -110,7 +112,7 @@ toggle_touchpad(Bool enable) if (pad_disabled && enable) { data = previous_state; pad_disabled = False; - if (!background) + if (verbose) printf("Enable\n"); } else if (!pad_disabled && !enable && previous_state != disable_state && @@ -118,7 +120,7 @@ toggle_touchpad(Bool enable) store_current_touchpad_state(); pad_disabled = True; data = disable_state; - if (!background) + if (verbose) printf("Disable\n"); } else return; @@ -290,7 +292,7 @@ Bool check_xrecord(Display *display) { &first_error); status = XRecordQueryVersion(display, version, version+1); - if (!background && status) { + if (verbose && status) { printf("X RECORD extension version %d.%d\n", version[0], version[1]); } return found; @@ -433,7 +435,7 @@ void record_main_loop(Display* display, double idle_time) { if (ret == 0 && pad_disabled) { /* timeout => enable event */ toggle_touchpad(True); - if (!background) printf("enable touchpad\n"); + if (verbose) printf("enable touchpad\n"); } } /* end while(1) */ @@ -516,7 +518,7 @@ main(int argc, char *argv[]) int use_xrecord = 0; /* Parse command line parameters */ - while ((c = getopt(argc, argv, "i:m:dtp:kKR?")) != EOF) { + while ((c = getopt(argc, argv, "i:m:dtp:kKR?v")) != EOF) { switch(c) { case 'i': idle_time = atof(optarg); @@ -543,6 +545,9 @@ main(int argc, char *argv[]) case 'R': use_xrecord = 1; break; + case 'v': + verbose = 1; + break; default: usage(); break; |