summaryrefslogtreecommitdiff
path: root/tools/syndaemon.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/syndaemon.c')
-rw-r--r--tools/syndaemon.c77
1 files changed, 6 insertions, 71 deletions
diff --git a/tools/syndaemon.c b/tools/syndaemon.c
index 2a46550..ca25a90 100644
--- a/tools/syndaemon.c
+++ b/tools/syndaemon.c
@@ -41,8 +41,6 @@
#include <sys/types.h>
#include <unistd.h>
#include <signal.h>
-#include <sys/ipc.h>
-#include <sys/shm.h>
#include <sys/time.h>
#include <sys/stat.h>
@@ -56,14 +54,12 @@ enum TouchpadState {
};
-static SynapticsSHM *synshm;
static int pad_disabled;
static int disable_taps_only;
static int ignore_modifier_combos;
static int ignore_modifier_keys;
static int background;
static const char *pid_file;
-static int use_shm = 1;
static Display *display;
static XDevice *dev;
static Atom touchpad_off_prop;
@@ -94,6 +90,7 @@ usage(void)
static void
toggle_touchpad(enum TouchpadState value)
{
+ unsigned char data = value;
if (pad_disabled && !value)
{
if (!background)
@@ -106,17 +103,10 @@ toggle_touchpad(enum TouchpadState value)
return;
pad_disabled = value;
- if (use_shm)
- synshm->touchpad_off = value;
-#ifdef HAVE_PROPERTIES
- else {
- unsigned char data = value;
- /* This potentially overwrites a different client's setting, but ...*/
- XChangeDeviceProperty(display, dev, touchpad_off_prop, XA_INTEGER, 8,
- PropModeReplace, &data, 1);
- XFlush(display);
- }
-#endif
+ /* This potentially overwrites a different client's setting, but ...*/
+ XChangeDeviceProperty(display, dev, touchpad_off_prop, XA_INTEGER, 8,
+ PropModeReplace, &data, 1);
+ XFlush(display);
}
static void
@@ -193,24 +183,6 @@ keyboard_activity(Display *display)
return ret;
}
-/**
- * Return non-zero if any physical touchpad button is currently pressed.
- */
-static int
-touchpad_buttons_active(void)
-{
- int i;
-
- if (synshm->left || synshm->right || synshm->up || synshm->down)
- return 1;
- for (i = 0; i < 8; i++)
- if (synshm->multi[i])
- return 1;
- if (synshm->guest_left || synshm->guest_mid || synshm->guest_right)
- return 1;
- return 0;
-}
-
static double
get_time(void)
{
@@ -232,8 +204,6 @@ main_loop(Display *display, double idle_time, int poll_delay)
current_time = get_time();
if (keyboard_activity(display))
last_activity = current_time;
- if (use_shm && touchpad_buttons_active())
- last_activity = 0.0;
if (current_time > last_activity + idle_time) { /* Enable touchpad */
toggle_touchpad(TouchpadOn);
@@ -455,7 +425,6 @@ void record_main_loop(Display* display, double idle_time) {
}
#endif /* HAVE_XRECORD */
-#ifdef HAVE_PROPERTIES
static XDevice *
dp_get_device(Display *dpy)
{
@@ -520,29 +489,6 @@ unwind:
}
return dev;
}
-#endif
-
-static int
-shm_init()
-{
- int shmid;
-
- /* Connect to the shared memory area */
- if ((shmid = shmget(SHM_SYNAPTICS, sizeof(SynapticsSHM), 0)) == -1) {
- if ((shmid = shmget(SHM_SYNAPTICS, 0, 0)) == -1) {
- fprintf(stderr, "Can't access shared memory area. SHMConfig disabled?\n");
- return 0;
- } else {
- fprintf(stderr, "Incorrect size of shared memory area. Incompatible driver version?\n");
- return 0;
- }
- }
- if ((synshm = (SynapticsSHM*) shmat(shmid, NULL, 0)) == NULL) {
- perror("shmat");
- return 0;
- }
- return 1;
-}
int
main(int argc, char *argv[])
@@ -552,10 +498,6 @@ main(int argc, char *argv[])
int c;
int use_xrecord = 0;
-#ifdef HAVE_PROPERTIES
- use_shm = 0;
-#endif
-
/* Parse command line parameters */
while ((c = getopt(argc, argv, "i:m:dtp:kKR?")) != EOF) {
switch(c) {
@@ -581,9 +523,6 @@ main(int argc, char *argv[])
ignore_modifier_combos = 1;
ignore_modifier_keys = 1;
break;
- case 's':
- use_shm = 1;
- break;
case 'R':
use_xrecord = 1;
break;
@@ -602,12 +541,8 @@ main(int argc, char *argv[])
exit(2);
}
- if (use_shm && !shm_init())
- exit(2);
-#ifdef HAVE_PROPERTIES
- else if (!use_shm && !(dev = dp_get_device(display)))
+ if (!(dev = dp_get_device(display)))
exit(2);
-#endif
/* Install a signal handler to restore synaptics parameters on exit */
install_signal_handler();