diff -Nru xserver-xorg-input-synaptics-1.6.3/COPYING xserver-xorg-input-synaptics-1.7.1/COPYING --- xserver-xorg-input-synaptics-1.6.3/COPYING 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/COPYING 2013-05-13 00:03:25.000000000 +0000 @@ -19,7 +19,7 @@ Copyright (c) 2006 Stefan Bethge Copyright (c) 2007 Joseph P. Skudlarek Copyright (c) 2007 Florian Loitsch -Copyright (c) 2008-2009 Red Hat, Inc. +Copyright (c) 2008-2012 Red Hat, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff -Nru xserver-xorg-input-synaptics-1.6.3/ChangeLog xserver-xorg-input-synaptics-1.7.1/ChangeLog --- xserver-xorg-input-synaptics-1.6.3/ChangeLog 2013-02-01 05:57:05.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/ChangeLog 2013-05-13 00:05:07.000000000 +0000 @@ -1,52 +1,181 @@ -commit 947d96faabc7267177da32fbfc9f8c3a81b576af +commit 96cf04dce19e7c90bc05b8b3b192b5bfb97381d2 Author: Peter Hutterer -Date: Fri Feb 1 15:53:14 2013 +1000 +Date: Mon May 13 10:03:48 2013 +1000 - synaptics 1.6.3 + synaptics 1.7.1 Signed-off-by: Peter Hutterer -commit 3b02d3061e58097ab5644b85250ed48e5ef0b02a +commit 3bd40423b26ab692174ddcdd12489467ba876926 Author: Peter Hutterer -Date: Fri Jan 4 16:08:47 2013 +1000 +Date: Thu May 9 11:09:51 2013 +1000 - conf: add example for AreaBottomEdge on clickpad buttons + Plug memory leak for priv->touch_axes - Those that use clickpad buttons as buttons can see cursor jumps as the press - on the touchpad - largely caused by the finger changing shape as the - pressure changes and thus moving the hotspot. + Allocated in event_query_touch, was never freed. - Simple fix is to define the clickpad soft button areas as dead areas, but - this cannot be set as general option as it would break for those that use - tapping. + Signed-off-by: Peter Hutterer + Reviewed-by: Dave Airlie + +commit eb50f8023e9ce11c3f0249ef9ddf398a1d983c84 +Author: Peter Hutterer +Date: Thu May 9 11:06:12 2013 +1000 + + Plug memory leak for option_string + + xf86SetStrOption() returns a strdup'd string that must be freed after use. Signed-off-by: Peter Hutterer - (cherry picked from commit 2159b5d26207c83efea6efca7fa5765df95a4219) + Reviewed-by: Dave Airlie -commit f23991d3c2bbf25d467ddd6d850acd5bca3cd4b2 +commit 7cc0ebf0858ebb505d933839f25bb269a8cdb764 Author: Peter Hutterer -Date: Thu Jan 17 19:22:03 2013 +1000 +Date: Fri Apr 26 10:09:10 2013 +1000 - synaptics 1.6.2.901 + Fix stack smash in clickpad_guess_clickfingers() + + Apple Magic Trackpad can report 16 slots. In clickpad_guess_clickfingers() + the array allocated on the stack contains only 10 slots. + As (.num_mt_mask == .num_slots), the function writes out of the bounds + of close_point. + + Use a size 32 bitmask instead and warn if we ever get past 32 touchpoints. + + This fixes: + https://bugzilla.redhat.com/show_bug.cgi?id=952221 Signed-off-by: Peter Hutterer + Reported-by: Benjamin Tissoires -commit cb883766ec07b3380541fe9248aa46f07c39c338 +commit ac47b4ea5b4f7b920b84a1e70adce3475e3be346 Author: Peter Hutterer -Date: Thu Aug 23 16:22:31 2012 +1000 +Date: Wed Apr 3 10:50:50 2013 +1000 - Recognise the soft button area property before clickpad is enabled + Allow soft button areas to overlap on the edge - Otherwise the driver has no internal reference to the soft button area - property and will ignore any setting. + For percent-based configuration in the form of + middle button 33%-66%, right button 66%-0 we'd get an error because of the + one device unit overlap. This was neither documented nor useful, because + leaving a 1% gap leaves an actual gap between the buttons. Allow for an + overlap of one device unit on the edge of the buttons. - Also, if a client sets this property, we claim it as our own and disallow - deletion. + What's picked in that case depends on the implementation of + is_inside_softbutton_area but since one device unit is so small, it doesn't + matter. + + Signed-off-by: Peter Hutterer + +commit 368d96f4dfd4605b80d039ec4508c906c3723cf7 +Author: Peter Hutterer +Date: Wed Apr 3 10:50:21 2013 +1000 + + man: clarify that 0, not 0% disables the softbutton area + + Signed-off-by: Peter Hutterer + +commit 148afc2dd55bb5d256d8b251542c90bcca7aaf84 +Author: Peter Hutterer +Date: Wed Apr 3 10:34:28 2013 +1000 + + Improve readability of the soft button areas + + Replace the hardcoded indices with enums that are somewhat expressive. + + Signed-off-by: Peter Hutterer + +commit 691e8db4d8a5e35eb31f62d1e54523917e2830cd +Author: Peter Hutterer +Date: Tue Apr 2 13:12:09 2013 +1000 + + synaptics 1.7.0 + + Signed-off-by: Peter Hutterer + +commit 43e98fe4909dbb1b82b486f2831a38d9db0c8957 +Author: Peter Hutterer +Date: Tue Mar 26 15:26:42 2013 +1000 + + synclient: use a parameter that actually exists in the man page example + + Signed-off-by: Peter Hutterer + +commit 5b49e4ad6cead80679405933603ff99ac00089b7 +Author: Peter Hutterer +Date: Tue Mar 26 15:24:56 2013 +1000 + + synclient: drop XF86Config-4 from man page + + Signed-off-by: Peter Hutterer + +commit 109ce14ae11f6a6afb66ddc683c7071ebbf9d352 +Author: Peter Hutterer +Date: Tue Mar 26 15:21:54 2013 +1000 + + syndaemon: list -? in help/man page + + Signed-off-by: Peter Hutterer + +commit eb5f086f29ed5e45cbbaad73a04a7275ab119d03 +Author: Peter Hutterer +Date: Tue Mar 26 15:18:03 2013 +1000 + + synclient: support -? for usage + + man page and help claim we support this, so let's do so + + Signed-off-by: Peter Hutterer + +commit d0590052873d6ce7c28e6e99b6aad33cf6dff944 +Author: Peter Hutterer +Date: Tue Mar 26 15:13:06 2013 +1000 + + synclient: remove 'm' and 'h' from getopt and man page + + Removed as of 83d88b253139f9c92d619e7ad7c3981138893536 Signed-off-by: Peter Hutterer - (cherry picked from commit 86460318ba5606ef41712b52e50bf7b2ba083226) -commit 7d1df986e1330a02cfb74a0babae1ae78768aa52 +commit d771cf75b101a741e29ba0765050936f52f1bca2 +Author: Peter Hutterer +Date: Tue Mar 26 15:12:29 2013 +1000 + + tools: drop -s listing in synclient's help output. SHM is gone. + + Signed-off-by: Peter Hutterer + +commit 43575f387865007e7ab3ed45088add62b674318d +Author: Peter Hutterer +Date: Mon Mar 25 16:49:05 2013 +1000 + + eventcomm: print axis resolution to the log + + Signed-off-by: Peter Hutterer + +commit 4cdee40054b2d6e222a7efb427f0f35479c04ec3 +Author: Peter Hutterer +Date: Thu Jan 31 09:27:19 2013 +1000 + + Replace numerical values with an enum for the TouchpadOff prop + + Signed-off-by: Peter Hutterer + +commit 2159b5d26207c83efea6efca7fa5765df95a4219 +Author: Peter Hutterer +Date: Fri Jan 4 16:08:47 2013 +1000 + + conf: add example for AreaBottomEdge on clickpad buttons + + Those that use clickpad buttons as buttons can see cursor jumps as the press + on the touchpad - largely caused by the finger changing shape as the + pressure changes and thus moving the hotspot. + + Simple fix is to define the clickpad soft button areas as dead areas, but + this cannot be set as general option as it would break for those that use + tapping. + + Signed-off-by: Peter Hutterer + +commit ce7565ea6683f594f1f2ab5769bf60b1337d70bd Author: Daniel Stone Date: Sat Dec 29 03:24:52 2012 +0000 @@ -65,55 +194,55 @@ Signed-off-by: Daniel Stone Reviewed-by: Dan Nicholson Signed-off-by: Peter Hutterer - (cherry picked from commit ce7565ea6683f594f1f2ab5769bf60b1337d70bd) -commit 04439c088b6d17e6ed374c185a82ca82fe93d0d3 +commit a5ac54f60af96b9b862425ccd8b6c7afaa4937e4 Author: Peter Hutterer -Date: Fri May 25 14:20:39 2012 +1000 +Date: Fri Dec 21 10:37:34 2012 +1000 - Use LogMessageVerbSigSafe on ABI 18 + Allow dead areas to update the button state + + On clickpads, a dead area helps prevent pointer movement when the buttons + are pressed. Thus check for the button state before resetting the hw state + in case we get a right-click in the soft button area. + + For clickfinger, the effect is that clickfinger events are now triggered if + the finger rests in the dead area. Signed-off-by: Peter Hutterer - Reviewed-by: Chase Douglas - (cherry picked from commit e28575b29b394b38f1d92b75353fc0fe82838b7c) -commit cf117e2b0d995e9a044914b66c237c157c86d71c +commit 86460318ba5606ef41712b52e50bf7b2ba083226 Author: Peter Hutterer -Date: Mon Oct 8 11:10:44 2012 +1000 +Date: Thu Aug 23 16:22:31 2012 +1000 - test: drop xf86CheckStrOption from fake symbols + Recognise the soft button area property before clickpad is enabled - The tests don't need this symbol anymore. + Otherwise the driver has no internal reference to the soft button area + property and will ignore any setting. - Signed-off-by: Peter Hutterer - (cherry picked from commit 3cb14dcccf5574366d90e24f351e3ad04b35e35f) + Also, if a client sets this property, we claim it as our own and disallow + deletion. - Conflicts: - test/fake-symbols.c - test/fake-symbols.h + Signed-off-by: Peter Hutterer -commit eebb562e92349f428463b241f371b420c93b5081 +commit 3cb14dcccf5574366d90e24f351e3ad04b35e35f Author: Peter Hutterer -Date: Fri Dec 21 10:37:34 2012 +1000 +Date: Mon Oct 8 11:10:44 2012 +1000 - Allow dead areas to update the button state - - On clickpads, a dead area helps prevent pointer movement when the buttons - are pressed. Thus check for the button state before resetting the hw state - in case we get a right-click in the soft button area. - - For clickfinger, the effect is that clickfinger events are now triggered if - the finger rests in the dead area. + test: drop xf86CheckStrOption from fake symbols - Signed-off-by: Peter Hutterer - (cherry picked from commit a5ac54f60af96b9b862425ccd8b6c7afaa4937e4) + The tests don't need this symbol anymore. Signed-off-by: Peter Hutterer + +commit 89cffd403b798a96d36b8d47a202f30ef1023e63 +Author: Samuel Thibault +Date: Sat Sep 15 23:52:13 2012 +0200 + + Enable ps2comm and alpscomm build on GNU/Hurd - Conflicts: - src/synaptics.c + Signed-off-by: Samuel Thibault -commit eae444eb1a85d2401501d29f9a6c654c046f806b +commit a245d42f53096b1ae81e6702729f97ca508e5b5b Author: Peter Hutterer Date: Thu Aug 30 16:38:38 2012 +1000 @@ -138,28 +267,212 @@ Signed-off-by: Peter Hutterer Reviewed-by: Chase Douglas - (cherry picked from commit a245d42f53096b1ae81e6702729f97ca508e5b5b) + +commit e28575b29b394b38f1d92b75353fc0fe82838b7c +Author: Peter Hutterer +Date: Fri May 25 14:20:39 2012 +1000 + + Use LogMessageVerbSigSafe on ABI 18 - Conflicts: - src/synaptics.c + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit 001097476a67057124536b753bbbef047961bab5 +Author: Peter Hutterer +Date: Wed Aug 1 13:33:41 2012 +1000 + + Decorate the accel log messages with (accel) + + The MinSpeed message already does so, do it for MaxSpeed and AccelFactor + too. + + Signed-off-by: Peter Hutterer + +commit 01456336976213cec724533e13c41f1908491e58 +Author: Peter Hutterer +Date: Fri Jun 22 15:59:32 2012 +1000 + + eventcomm: proto_data is not null, don't check + + We allocate it just a few lines north of here, and already dereferenced it. + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit 33c5bfc702645e603312aeb5380c53afeaad1dce +Author: Peter Hutterer +Date: Fri Jun 22 15:55:23 2012 +1000 + + eventcomm: simplify conditions + + As of 3f9794a8a0f019a4b153941c9ec1927c7797ce6f, slot_index is always >= 0 + when we get to either of these conditions. + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit 0e222876d7da7acbaaf955c2e7b7efdf3549bde9 +Author: Chase Douglas +Date: Fri Jun 8 13:53:38 2012 -0700 -commit d5ff9d8b0b186cf39695df84a10984eac559b746 + Turn down the default sensitivity for unibody MacBook touchpads + + The touchpads are too sensitive by default. A touch is activated when a + finger hovers a millimeter off the device. This change turns down the + default sensitivity so that accidental touchpad interactions are + lessened and pointer interaction accuracy is increased. + + Signed-off-by: Chase Douglas + Reviewed-by: Peter Hutterer + Signed-off-by: Peter Hutterer + +commit 4fa880d2b1e1805e90827af5bbb483e268ac68a3 +Author: Chase Douglas +Date: Fri Jun 8 13:53:37 2012 -0700 + + Add MODEL_UNIBODY_MACBOOK touchpad model for bcm5974 devices + + Initially, treat them the same as MODEL_APPLETOUCH devices, as that is + what they were recognized as before. + + Signed-off-by: Chase Douglas + Signed-off-by: Peter Hutterer + +commit 43c9be99c1fd35c2974e0db41cad9f7b875fb6c9 +Author: Peter Hutterer +Date: Fri May 18 14:32:31 2012 +1000 + + Remove leftover HAVE_SMOOTH_SCROLL typedef + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit 51f99d0adcb6ffab6eb5b2220d02b6b66a978983 +Author: Peter Hutterer +Date: Thu May 17 17:38:20 2012 +1000 + + Move properties header to where it's needed + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit d45394559a89bee49758ea7d42d00c471727f4f5 +Author: Peter Hutterer +Date: Thu May 17 16:32:32 2012 +1000 + + ps2comm: use ErrorF from PS2DBG directly + + And switch a few current DBG messages to PS2DBG to have one ps/2 debugging + output command. + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit 7decf4666fcc7a0a1c3a070abec876439dc8f376 +Author: Peter Hutterer +Date: Mon May 21 10:54:19 2012 +1000 + + Fix indentation for the synaptics protocol ops + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit f3abb163c3c216f48a5f4624b12c32e496336513 +Author: Peter Hutterer +Date: Mon May 21 10:35:47 2012 +1000 + + check for HAVE_CONFIG_H before including config.h + + No real effect, just for correctness. Plus, move the include directive up to + be the first include. + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit e6ca6521b4e880c6a314a880e73039e574a02c28 +Author: Peter Hutterer +Date: Wed May 23 14:22:32 2012 +1000 + + Un-typedef model_lookup_t + + Long-term, structs will be structs without typedef. This one is the easiest + one to convert, the rest follows later. + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit 9ae890cf4e5df184f68799d534fa6aa67c36301b +Author: Peter Hutterer +Date: Wed May 23 14:23:00 2012 +1000 + + tools: un-typedef TouchpadState + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit 0d9996da02493bed8931663bb3d724e30bd56877 +Author: Peter Hutterer +Date: Wed May 23 13:51:14 2012 +1000 + + Remove typedefs from all enums + + We currently mix non-typedef'd and typedef'd enums in the code. Stop this + mixing, remove typedefs to make the code more obvious. + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit 29bc1a8a5e0d12dadaed3f9d162bcc6b7913250a Author: Peter Hutterer -Date: Tue Jun 12 13:46:34 2012 +1000 +Date: Mon May 21 16:01:42 2012 +1000 - synaptics 1.6.2 + Remove an unused define for 1/sqrt(2) Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas -commit c1aae820601a911432c64938f03eab62bafaab2f +commit 3621ef8a2b02da5ef303b80e26ec46b4a89cb9da Author: Peter Hutterer -Date: Fri May 18 09:38:50 2012 +1000 +Date: Mon May 21 14:05:01 2012 +1000 - synaptics 1.6.1.901 + DeviceOn and friends return a status code, not a bool + + No functional changes, just making things more obvious. Signed-off-by: Peter Hutterer -commit 7ccca8e7d8fbf2ccb5a2dbbfbf06ff4dbd6b7149 +commit 1770c8a7e82099753c4eb743868cde8c4228d531 +Author: Peter Hutterer +Date: Fri May 18 16:08:08 2012 +1000 + + Remove @DRIVER_NAME@ from Makefile.am + + Signed-off-by: Peter Hutterer + +commit 64faedf49fe952e48a07434381fbf826a1cbed41 +Author: Peter Hutterer +Date: Fri May 18 16:31:55 2012 +1000 + + Fix indentation mishap + + Signed-off-by: Peter Hutterer + +commit a9d247d076b3d0d1df84f013b3733bd6297dd79b +Author: Peter Hutterer +Date: Thu May 17 15:52:50 2012 +1000 + + Remove absolute mode + + Moving a touchpad in absolute mode is unusual - touchpads are disconnected + from the output device, so direct interaction is hard. There appears to be + little usage of it (I haven't seen bug reports from people claiming to use + it). Joe Shaw, author of the code and only known user doesn't have a use for + it anymore, so purge it from the repo. + + Signed-off-by: Peter Hutterer + Reviewed-by: Chase Douglas + +commit 6d47d334d8a876e7e094306c313246b87016b78a Author: Peter Hutterer Date: Thu May 17 12:10:04 2012 +1000 @@ -172,9 +485,8 @@ Signed-off-by: Peter Hutterer Reviewed-by: Chase Douglas - (cherry picked from commit 6d47d334d8a876e7e094306c313246b87016b78a) -commit f8d970e191e6df05a8f2c26afdeea3e27b941a62 +commit cd569377cda9b5a4ee00c0137db14f625c76c40f Author: Peter Hutterer Date: Thu May 17 11:02:02 2012 +1000 @@ -204,9 +516,8 @@ Signed-off-by: Peter Hutterer Reviewed-by: Chase Douglas - (cherry picked from commit cd569377cda9b5a4ee00c0137db14f625c76c40f) -commit 739175d198372a3226ce061b118d8fe5bbc8f6bf +commit 0054b144f3daf00e46a35b2f165befb209df94fc Author: Chase Douglas Date: Wed May 16 07:49:25 2012 -0700 @@ -219,9 +530,8 @@ Signed-off-by: Chase Douglas Signed-off-by: Peter Hutterer - (cherry picked from commit 0054b144f3daf00e46a35b2f165befb209df94fc) -commit 67a02d676c96d5b3d4729290cd96af0201eb76bb +commit 53557a5cab1e253dc8f4393207954ae0fe76068f Author: Chun Yang Date: Tue May 15 14:51:42 2012 -0500 @@ -236,9 +546,19 @@ Signed-off-by: Chun Yang Signed-off-by: Peter Hutterer - (cherry picked from commit 53557a5cab1e253dc8f4393207954ae0fe76068f) -commit 23e87b57bb874326c88a7ad7292bec51959fb876 +commit 1ee5bd0af6ac5c1b95d99f27f407223cd460fdb8 +Author: Peter Hutterer +Date: Tue May 15 11:22:43 2012 +1000 + + Remove defunct HAVE_MULTITOUCH compiler warning + + Seems like this was a rebase gone wrong, HAVE_MULTITOUCH was removed in + 3430f4af41184752d698dcbf4919469e36b3216c + + Signed-off-by: Peter Hutterer + +commit 55fc42e7c9b4948cadd4f98ef7b6a3b12e268e3e Author: Chase Douglas Date: Mon May 14 10:20:01 2012 -0700 @@ -255,9 +575,8 @@ Signed-off-by: Chase Douglas Signed-off-by: Peter Hutterer - (cherry picked from commit 55fc42e7c9b4948cadd4f98ef7b6a3b12e268e3e) -commit 23065a974e5dcdf0d6a436a0547bb7887d306a6f +commit 77d766b1d535dff9a27c7db343ede85d9f44850b Author: Peter Hutterer Date: Fri May 11 12:27:39 2012 +1000 @@ -271,26 +590,16 @@ Signed-off-by: Peter Hutterer Reviewed-by: Chase Douglas - (cherry picked from commit 77d766b1d535dff9a27c7db343ede85d9f44850b) - -commit e0f5688994baa85a8c658120681575cdd0ba2a58 -Author: Peter Hutterer -Date: Fri May 11 10:30:21 2012 +1000 - - synaptics 1.6.1 - - Signed-off-by: Peter Hutterer -commit 7f2d9d88204c62de3cb63b48001b9e2408d3a20d +commit 0352c67fa2a7224b5a3bf03a934b3c7af42b4f51 Author: Peter Hutterer Date: Fri May 11 10:54:47 2012 +1000 tools: coasting speed is not capped at 20, cap it at 255 Signed-off-by: Peter Hutterer - (cherry picked from commit 0352c67fa2a7224b5a3bf03a934b3c7af42b4f51) -commit ace20a02c371478f6a9d224dfd31ea219d91fc46 +commit 0de4445ff8e75aab208faf6383e76045934c6720 Author: Peter Hutterer Date: Wed May 9 14:26:40 2012 +1000 @@ -307,9 +616,8 @@ http://bugzilla.redhat.com/813686 Signed-off-by: Peter Hutterer - (cherry picked from commit 0de4445ff8e75aab208faf6383e76045934c6720) -commit 04d24116db59872d4cd00f38a0d1c87957fe4914 +commit a1d6784d790f081f8a6ea3a10d3cfa578aa10d5b Author: Peter Hutterer Date: Wed May 9 12:23:46 2012 +1000 @@ -331,7 +639,145 @@ Signed-off-by: Peter Hutterer Reviewed-by: Chase Douglas - (cherry picked from commit a1d6784d790f081f8a6ea3a10d3cfa578aa10d5b) + +commit 4d4d859296b93f1e2bd1c059f5864f19d87de58a +Author: Peter Hutterer +Date: Tue May 8 08:19:48 2012 +1000 + + Rename force_empty parameter to set_slot_empty + + Original version of d13e83b921a398b9472b07874cf5061c8a0ea6a6 had + 'force_empty', the rename only covered the definition, not the declaration + of the function. + + No functional changes. + + Reported-by: Nicola Soranzo + Signed-off-by: Peter Hutterer + +commit b6f3ccd40237d2d8df653f0dcba2ca7336c13f2b +Author: Peter Hutterer +Date: Fri Mar 23 16:27:42 2012 +1000 + + Format Makefile.am, drop @DRIVER_NAME@.c usage + + The driver name doesn't change often enough for this to warrant it. + + Signed-off-by: Peter Hutterer + Acked-by: Chase Douglas + +commit ebd36c7494062e9f9a47fcd20148de886ebdd46a +Author: Peter Hutterer +Date: Fri Mar 23 16:25:54 2012 +1000 + + Move synaptics.h leftovers to synapticsstr.h, drop synaptics.h + + This leaves us with a duplicated define for the maxbuttons but I'll live + with that for now. + + Signed-off-by: Peter Hutterer + Acked-by: Chase Douglas + +commit 3430f4af41184752d698dcbf4919469e36b3216c +Author: Peter Hutterer +Date: Fri Mar 23 16:19:18 2012 +1000 + + Require xserver 1.12 and inputproto 2.2 + + This drops conditional compilation of multitouch support, smooth scrolling + support and old ABIs. + + Signed-off-by: Peter Hutterer + Acked-by: Chase Douglas + +commit 13611cd34e267370690e06bef6a02064927c2078 +Author: Peter Hutterer +Date: Fri Mar 23 16:11:59 2012 +1000 + + Update various Red Hat copyrights + + Signed-off-by: Peter Hutterer + Acked-by: Chase Douglas + +commit 3b02e7fd81da4b100fb9ac32378f6d50f54cf0e2 +Author: Peter Hutterer +Date: Sun Feb 5 22:50:47 2012 +1000 + + Drop circular pad support + + Do such devices still exist? + + Signed-off-by: Peter Hutterer + Acked-by: Chase Douglas + +commit 0903d99ada1755f11a2a5cbf89a345de896e18ec +Author: Peter Hutterer +Date: Sun Feb 5 00:54:59 2012 +1000 + + Purge scrollbuttons (repeat) + + I doubt devices that have scrollbuttons are still manufactured. Having + untested code around is just asking for trouble. + + Signed-off-by: Peter Hutterer + Acked-by: Chase Douglas + +commit 54f65f3ca1f7a7118bea96915d79acee28721581 +Author: Peter Hutterer +Date: Sun Feb 5 00:46:48 2012 +1000 + + Purge edge motion + + A funny feature, but unreliable and mostly untested. + + Signed-off-by: Peter Hutterer + Acked-by: Chase Douglas + +commit d14ea867ad5d6f8a758a18223e457e1a56fa6065 +Author: Peter Hutterer +Date: Sun Feb 5 00:42:36 2012 +1000 + + Purge fast-taps option + + This driver has too many options, maintaining them is hard and testing + virtually doesn't happen. + + Signed-off-by: Peter Hutterer + Acked-by: Chase Douglas + +commit 2c7eab5a6d28cf8bbf34fba79601dac4e6e37d7e +Author: Peter Hutterer +Date: Sat Feb 4 23:32:56 2012 +1000 + + Drop trackstick emulation mode + + "Trackstick emulation mode? That exists?" I hear you say? Yes, indeed. Well, + no, not anymore. This driver is already unmaintainable without features like + this. + + Signed-off-by: Peter Hutterer + Acked-by: Chase Douglas + +commit 83d88b253139f9c92d619e7ad7c3981138893536 +Author: Peter Hutterer +Date: Sat Feb 4 23:35:53 2012 +1000 + + Bury shm - or what was left of it + + SHM configuration was removed in Apr 2009 (c09a3d50e9), since then it has + only been usedful for debugging. And we have better tools (evtest) for + debugging hardware events. + + Signed-off-by: Peter Hutterer + Acked-by: Chase Douglas + +commit 6dea359bc8f507eb46293f7fe5041b0cd6d0dbaa +Author: Peter Hutterer +Date: Thu May 10 09:24:56 2012 +1000 + + Bump to 1.6.99 + + Signed-off-by: Peter Hutterer commit 4e8ddb3a6f1ba1f7642f0a23d6f22a8c40d68cf0 Author: Peter Hutterer diff -Nru xserver-xorg-input-synaptics-1.6.3/Makefile.in xserver-xorg-input-synaptics-1.7.1/Makefile.in --- xserver-xorg-input-synaptics-1.6.3/Makefile.in 2013-02-01 05:36:07.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/Makefile.in 2013-05-13 00:04:21.000000000 +0000 @@ -218,7 +218,6 @@ DLLTOOL = @DLLTOOL@ DRIVER_MAN_DIR = @DRIVER_MAN_DIR@ DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@ -DRIVER_NAME = @DRIVER_NAME@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ @@ -279,8 +278,6 @@ STRICT_CFLAGS = @STRICT_CFLAGS@ STRIP = @STRIP@ VERSION = @VERSION@ -XI22_CFLAGS = @XI22_CFLAGS@ -XI22_LIBS = @XI22_LIBS@ XI_CFLAGS = @XI_CFLAGS@ XI_LIBS = @XI_LIBS@ XORG_CFLAGS = @XORG_CFLAGS@ diff -Nru xserver-xorg-input-synaptics-1.6.3/aclocal.m4 xserver-xorg-input-synaptics-1.7.1/aclocal.m4 --- xserver-xorg-input-synaptics-1.6.3/aclocal.m4 2013-02-01 05:36:06.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/aclocal.m4 2013-05-13 00:04:20.000000000 +0000 @@ -8638,7 +8638,8 @@ # ---------------------------------- AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) -m4_pattern_allow([^PKG_CONFIG(_PATH)?$]) +m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) +m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) @@ -8684,7 +8685,8 @@ pkg_cv_[]$1="$$1" elif test -n "$PKG_CONFIG"; then PKG_CHECK_EXISTS([$3], - [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], + [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes ], [pkg_failed=yes]) else pkg_failed=untried @@ -8732,9 +8734,9 @@ AC_MSG_RESULT([no]) _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then - $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1` + $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` else - $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1` + $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD @@ -8747,7 +8749,7 @@ Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. -_PKG_TEXT]) +_PKG_TEXT])[]dnl ]) elif test $pkg_failed = untried; then AC_MSG_RESULT([no]) @@ -8758,7 +8760,7 @@ _PKG_TEXT -To get pkg-config, see .]) +To get pkg-config, see .])[]dnl ]) else $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS @@ -8768,6 +8770,46 @@ fi[]dnl ])# PKG_CHECK_MODULES + +# PKG_INSTALLDIR(DIRECTORY) +# ------------------------- +# Substitutes the variable pkgconfigdir as the location where a module +# should install pkg-config .pc files. By default the directory is +# $libdir/pkgconfig, but the default can be changed by passing +# DIRECTORY. The user can override through the --with-pkgconfigdir +# parameter. +AC_DEFUN([PKG_INSTALLDIR], +[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) +m4_pushdef([pkg_description], + [pkg-config installation directory @<:@]pkg_default[@:>@]) +AC_ARG_WITH([pkgconfigdir], + [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, + [with_pkgconfigdir=]pkg_default) +AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) +m4_popdef([pkg_default]) +m4_popdef([pkg_description]) +]) dnl PKG_INSTALLDIR + + +# PKG_NOARCH_INSTALLDIR(DIRECTORY) +# ------------------------- +# Substitutes the variable noarch_pkgconfigdir as the location where a +# module should install arch-independent pkg-config .pc files. By +# default the directory is $datadir/pkgconfig, but the default can be +# changed by passing DIRECTORY. The user can override through the +# --with-noarch-pkgconfigdir parameter. +AC_DEFUN([PKG_NOARCH_INSTALLDIR], +[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) +m4_pushdef([pkg_description], + [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) +AC_ARG_WITH([noarch-pkgconfigdir], + [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, + [with_noarch_pkgconfigdir=]pkg_default) +AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) +m4_popdef([pkg_default]) +m4_popdef([pkg_description]) +]) dnl PKG_NOARCH_INSTALLDIR + dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure. dnl dnl Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. @@ -8957,7 +8999,6 @@ -e 's|__xorgversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \ -e 's|__xservername__|Xorg|g' \ -e 's|__xconfigfile__|xorg.conf|g' \ - -e 's|__xorgconfdir__|xorg.conf.d|g' \ -e 's|__projectroot__|\$(prefix)|g' \ -e 's|__apploaddir__|\$(appdefaultdir)|g' \ -e 's|__appmansuffix__|\$(APP_MAN_SUFFIX)|g' \ @@ -10325,7 +10366,7 @@ PREFIX[FLAGS]="$PREFIX[FLAGS] ]flag[" dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname - AC_MSG_CHECKING([if ]COMPILER[ supports ]flag[]) + AC_MSG_CHECKING([if ]COMPILER[ supports]flag[]) cacheid=AS_TR_SH([xorg_cv_]CACHE_PREFIX[_flag_]flag[]) AC_CACHE_VAL($cacheid, [AC_LINK_IFELSE([AC_LANG_PROGRAM([int i;])], @@ -10647,10 +10688,10 @@ dnl from the copyright holders. dnl -# XORG_DRIVER_CHECK_EXT(MACRO, PROTO) +# XORG_DRIVER_CHECK_EXT() # -------------------------- -# Checks for the MACRO define in xorg-server.h (from the sdk). If it -# is defined, then add the given PROTO to $REQUIRED_MODULES. +# Checks for the $1 define in xorg-server.h (from the sdk). If it +# is defined, then add $1 to $REQUIRED_MODULES. AC_DEFUN([XORG_DRIVER_CHECK_EXT],[ AC_REQUIRE([PKG_PROG_PKG_CONFIG]) diff -Nru xserver-xorg-input-synaptics-1.6.3/conf/Makefile.in xserver-xorg-input-synaptics-1.7.1/conf/Makefile.in --- xserver-xorg-input-synaptics-1.6.3/conf/Makefile.in 2013-02-01 05:36:07.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/conf/Makefile.in 2013-05-13 00:04:22.000000000 +0000 @@ -158,7 +158,6 @@ DLLTOOL = @DLLTOOL@ DRIVER_MAN_DIR = @DRIVER_MAN_DIR@ DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@ -DRIVER_NAME = @DRIVER_NAME@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ @@ -219,8 +218,6 @@ STRICT_CFLAGS = @STRICT_CFLAGS@ STRIP = @STRIP@ VERSION = @VERSION@ -XI22_CFLAGS = @XI22_CFLAGS@ -XI22_LIBS = @XI22_LIBS@ XI_CFLAGS = @XI_CFLAGS@ XI_LIBS = @XI_LIBS@ XORG_CFLAGS = @XORG_CFLAGS@ diff -Nru xserver-xorg-input-synaptics-1.6.3/config.guess xserver-xorg-input-synaptics-1.7.1/config.guess --- xserver-xorg-input-synaptics-1.6.3/config.guess 2013-01-15 04:27:04.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/config.guess 2013-07-25 13:48:45.000000000 +0000 @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, # 2011, 2012 Free Software Foundation, Inc. -timestamp='2012-06-10' +timestamp='2012-02-10' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -1256,7 +1256,7 @@ NEO-?:NONSTOP_KERNEL:*:*) echo neo-tandem-nsk${UNAME_RELEASE} exit ;; - NSE-*:NONSTOP_KERNEL:*:*) + NSE-?:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; NSR-?:NONSTOP_KERNEL:*:*) diff -Nru xserver-xorg-input-synaptics-1.6.3/config.h.in xserver-xorg-input-synaptics-1.7.1/config.h.in --- xserver-xorg-input-synaptics-1.6.3/config.h.in 2013-02-01 05:36:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/config.h.in 2013-05-13 00:04:27.000000000 +0000 @@ -24,9 +24,6 @@ /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H -/* XI2.2 available */ -#undef HAVE_MULTITOUCH - /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H diff -Nru xserver-xorg-input-synaptics-1.6.3/configure xserver-xorg-input-synaptics-1.7.1/configure --- xserver-xorg-input-synaptics-1.6.3/configure 2013-02-01 05:36:07.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/configure 2013-05-13 00:04:21.000000000 +0000 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for xf86-input-synaptics 1.6.3. +# Generated by GNU Autoconf 2.69 for xf86-input-synaptics 1.7.1. # # Report bugs to . # @@ -591,8 +591,8 @@ # Identity of this package. PACKAGE_NAME='xf86-input-synaptics' PACKAGE_TARNAME='xf86-input-synaptics' -PACKAGE_VERSION='1.6.3' -PACKAGE_STRING='xf86-input-synaptics 1.6.3' +PACKAGE_VERSION='1.7.1' +PACKAGE_STRING='xf86-input-synaptics 1.7.1' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg' PACKAGE_URL='' @@ -655,9 +655,6 @@ HAS_XORG_CONF_DIR_TRUE configdir inputdir -XI22_LIBS -XI22_CFLAGS -DRIVER_NAME sdkdir XORG_LIBS XORG_CFLAGS @@ -837,8 +834,6 @@ XORG_MALLOC_DEBUG_ENV XORG_CFLAGS XORG_LIBS -XI22_CFLAGS -XI22_LIBS MTDEV_CFLAGS MTDEV_LIBS XI_CFLAGS @@ -1385,7 +1380,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xf86-input-synaptics 1.6.3 to adapt to many kinds of systems. +\`configure' configures xf86-input-synaptics 1.7.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1456,7 +1451,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xf86-input-synaptics 1.6.3:";; + short | recursive ) echo "Configuration of xf86-input-synaptics 1.7.1:";; esac cat <<\_ACEOF @@ -1521,8 +1516,6 @@ Environment variables to enable memory checking in tests XORG_CFLAGS C compiler flags for XORG, overriding pkg-config XORG_LIBS linker flags for XORG, overriding pkg-config - XI22_CFLAGS C compiler flags for XI22, overriding pkg-config - XI22_LIBS linker flags for XI22, overriding pkg-config MTDEV_CFLAGS C compiler flags for MTDEV, overriding pkg-config MTDEV_LIBS linker flags for MTDEV, overriding pkg-config @@ -1597,7 +1590,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xf86-input-synaptics configure 1.6.3 +xf86-input-synaptics configure 1.7.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1921,7 +1914,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xf86-input-synaptics $as_me 1.6.3, which was +It was created by xf86-input-synaptics $as_me 1.7.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2750,7 +2743,7 @@ # Define the identity of the package. PACKAGE='xf86-input-synaptics' - VERSION='1.6.3' + VERSION='1.7.1' cat >>confdefs.h <<_ACEOF @@ -11606,6 +11599,7 @@ + if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. @@ -11822,8 +11816,8 @@ CFLAGS="$CFLAGS -Wall" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wall" >&5 -$as_echo_n "checking if $CC supports -Wall... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wall" >&5 +$as_echo_n "checking if $CC supports-Wall... " >&6; } cacheid=xorg_cv_cc_flag__Wall if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -11940,8 +11934,8 @@ CFLAGS="$CFLAGS -Wpointer-arith" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wpointer-arith" >&5 -$as_echo_n "checking if $CC supports -Wpointer-arith... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wpointer-arith" >&5 +$as_echo_n "checking if $CC supports-Wpointer-arith... " >&6; } cacheid=xorg_cv_cc_flag__Wpointer_arith if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -12058,8 +12052,8 @@ CFLAGS="$CFLAGS -Wmissing-declarations" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wmissing-declarations" >&5 -$as_echo_n "checking if $CC supports -Wmissing-declarations... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wmissing-declarations" >&5 +$as_echo_n "checking if $CC supports-Wmissing-declarations... " >&6; } cacheid=xorg_cv_cc_flag__Wmissing_declarations if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -12176,8 +12170,8 @@ CFLAGS="$CFLAGS -Wformat=2" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wformat=2" >&5 -$as_echo_n "checking if $CC supports -Wformat=2... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wformat=2" >&5 +$as_echo_n "checking if $CC supports-Wformat=2... " >&6; } cacheid=xorg_cv_cc_flag__Wformat_2 if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -12225,8 +12219,8 @@ CFLAGS="$CFLAGS -Wformat" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wformat" >&5 -$as_echo_n "checking if $CC supports -Wformat... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wformat" >&5 +$as_echo_n "checking if $CC supports-Wformat... " >&6; } cacheid=xorg_cv_cc_flag__Wformat if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -12345,8 +12339,8 @@ CFLAGS="$CFLAGS -Wstrict-prototypes" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wstrict-prototypes" >&5 -$as_echo_n "checking if $CC supports -Wstrict-prototypes... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wstrict-prototypes" >&5 +$as_echo_n "checking if $CC supports-Wstrict-prototypes... " >&6; } cacheid=xorg_cv_cc_flag__Wstrict_prototypes if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -12463,8 +12457,8 @@ CFLAGS="$CFLAGS -Wmissing-prototypes" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wmissing-prototypes" >&5 -$as_echo_n "checking if $CC supports -Wmissing-prototypes... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wmissing-prototypes" >&5 +$as_echo_n "checking if $CC supports-Wmissing-prototypes... " >&6; } cacheid=xorg_cv_cc_flag__Wmissing_prototypes if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -12581,8 +12575,8 @@ CFLAGS="$CFLAGS -Wnested-externs" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wnested-externs" >&5 -$as_echo_n "checking if $CC supports -Wnested-externs... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wnested-externs" >&5 +$as_echo_n "checking if $CC supports-Wnested-externs... " >&6; } cacheid=xorg_cv_cc_flag__Wnested_externs if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -12699,8 +12693,8 @@ CFLAGS="$CFLAGS -Wbad-function-cast" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wbad-function-cast" >&5 -$as_echo_n "checking if $CC supports -Wbad-function-cast... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wbad-function-cast" >&5 +$as_echo_n "checking if $CC supports-Wbad-function-cast... " >&6; } cacheid=xorg_cv_cc_flag__Wbad_function_cast if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -12817,8 +12811,8 @@ CFLAGS="$CFLAGS -Wold-style-definition" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wold-style-definition" >&5 -$as_echo_n "checking if $CC supports -Wold-style-definition... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wold-style-definition" >&5 +$as_echo_n "checking if $CC supports-Wold-style-definition... " >&6; } cacheid=xorg_cv_cc_flag__Wold_style_definition if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -12935,8 +12929,8 @@ CFLAGS="$CFLAGS -Wdeclaration-after-statement" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wdeclaration-after-statement" >&5 -$as_echo_n "checking if $CC supports -Wdeclaration-after-statement... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wdeclaration-after-statement" >&5 +$as_echo_n "checking if $CC supports-Wdeclaration-after-statement... " >&6; } cacheid=xorg_cv_cc_flag__Wdeclaration_after_statement if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -13057,8 +13051,8 @@ CFLAGS="$CFLAGS -Wunused" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wunused" >&5 -$as_echo_n "checking if $CC supports -Wunused... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wunused" >&5 +$as_echo_n "checking if $CC supports-Wunused... " >&6; } cacheid=xorg_cv_cc_flag__Wunused if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -13175,8 +13169,8 @@ CFLAGS="$CFLAGS -Wuninitialized" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wuninitialized" >&5 -$as_echo_n "checking if $CC supports -Wuninitialized... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wuninitialized" >&5 +$as_echo_n "checking if $CC supports-Wuninitialized... " >&6; } cacheid=xorg_cv_cc_flag__Wuninitialized if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -13293,8 +13287,8 @@ CFLAGS="$CFLAGS -Wshadow" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wshadow" >&5 -$as_echo_n "checking if $CC supports -Wshadow... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wshadow" >&5 +$as_echo_n "checking if $CC supports-Wshadow... " >&6; } cacheid=xorg_cv_cc_flag__Wshadow if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -13411,8 +13405,8 @@ CFLAGS="$CFLAGS -Wcast-qual" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wcast-qual" >&5 -$as_echo_n "checking if $CC supports -Wcast-qual... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wcast-qual" >&5 +$as_echo_n "checking if $CC supports-Wcast-qual... " >&6; } cacheid=xorg_cv_cc_flag__Wcast_qual if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -13529,8 +13523,8 @@ CFLAGS="$CFLAGS -Wmissing-noreturn" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wmissing-noreturn" >&5 -$as_echo_n "checking if $CC supports -Wmissing-noreturn... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wmissing-noreturn" >&5 +$as_echo_n "checking if $CC supports-Wmissing-noreturn... " >&6; } cacheid=xorg_cv_cc_flag__Wmissing_noreturn if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -13647,8 +13641,8 @@ CFLAGS="$CFLAGS -Wmissing-format-attribute" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wmissing-format-attribute" >&5 -$as_echo_n "checking if $CC supports -Wmissing-format-attribute... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wmissing-format-attribute" >&5 +$as_echo_n "checking if $CC supports-Wmissing-format-attribute... " >&6; } cacheid=xorg_cv_cc_flag__Wmissing_format_attribute if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -13765,8 +13759,8 @@ CFLAGS="$CFLAGS -Wredundant-decls" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wredundant-decls" >&5 -$as_echo_n "checking if $CC supports -Wredundant-decls... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wredundant-decls" >&5 +$as_echo_n "checking if $CC supports-Wredundant-decls... " >&6; } cacheid=xorg_cv_cc_flag__Wredundant_decls if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -13895,8 +13889,8 @@ CFLAGS="$CFLAGS -Werror=implicit" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=implicit" >&5 -$as_echo_n "checking if $CC supports -Werror=implicit... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=implicit" >&5 +$as_echo_n "checking if $CC supports-Werror=implicit... " >&6; } cacheid=xorg_cv_cc_flag__Werror_implicit if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -13944,8 +13938,8 @@ CFLAGS="$CFLAGS -errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED" >&5 -$as_echo_n "checking if $CC supports -errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED" >&5 +$as_echo_n "checking if $CC supports-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED... " >&6; } cacheid=xorg_cv_cc_flag__errwarn_E_NO_EXPLICIT_TYPE_GIVEN__errwarn_E_NO_IMPLICIT_DECL_ALLOWED if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -14062,8 +14056,8 @@ CFLAGS="$CFLAGS -Werror=nonnull" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=nonnull" >&5 -$as_echo_n "checking if $CC supports -Werror=nonnull... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=nonnull" >&5 +$as_echo_n "checking if $CC supports-Werror=nonnull... " >&6; } cacheid=xorg_cv_cc_flag__Werror_nonnull if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -14180,8 +14174,8 @@ CFLAGS="$CFLAGS -Werror=init-self" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=init-self" >&5 -$as_echo_n "checking if $CC supports -Werror=init-self... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=init-self" >&5 +$as_echo_n "checking if $CC supports-Werror=init-self... " >&6; } cacheid=xorg_cv_cc_flag__Werror_init_self if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -14298,8 +14292,8 @@ CFLAGS="$CFLAGS -Werror=main" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=main" >&5 -$as_echo_n "checking if $CC supports -Werror=main... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=main" >&5 +$as_echo_n "checking if $CC supports-Werror=main... " >&6; } cacheid=xorg_cv_cc_flag__Werror_main if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -14416,8 +14410,8 @@ CFLAGS="$CFLAGS -Werror=missing-braces" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=missing-braces" >&5 -$as_echo_n "checking if $CC supports -Werror=missing-braces... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=missing-braces" >&5 +$as_echo_n "checking if $CC supports-Werror=missing-braces... " >&6; } cacheid=xorg_cv_cc_flag__Werror_missing_braces if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -14534,8 +14528,8 @@ CFLAGS="$CFLAGS -Werror=sequence-point" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=sequence-point" >&5 -$as_echo_n "checking if $CC supports -Werror=sequence-point... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=sequence-point" >&5 +$as_echo_n "checking if $CC supports-Werror=sequence-point... " >&6; } cacheid=xorg_cv_cc_flag__Werror_sequence_point if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -14652,8 +14646,8 @@ CFLAGS="$CFLAGS -Werror=return-type" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=return-type" >&5 -$as_echo_n "checking if $CC supports -Werror=return-type... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=return-type" >&5 +$as_echo_n "checking if $CC supports-Werror=return-type... " >&6; } cacheid=xorg_cv_cc_flag__Werror_return_type if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -14701,8 +14695,8 @@ CFLAGS="$CFLAGS -errwarn=E_FUNC_HAS_NO_RETURN_STMT" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -errwarn=E_FUNC_HAS_NO_RETURN_STMT" >&5 -$as_echo_n "checking if $CC supports -errwarn=E_FUNC_HAS_NO_RETURN_STMT... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-errwarn=E_FUNC_HAS_NO_RETURN_STMT" >&5 +$as_echo_n "checking if $CC supports-errwarn=E_FUNC_HAS_NO_RETURN_STMT... " >&6; } cacheid=xorg_cv_cc_flag__errwarn_E_FUNC_HAS_NO_RETURN_STMT if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -14819,8 +14813,8 @@ CFLAGS="$CFLAGS -Werror=trigraphs" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=trigraphs" >&5 -$as_echo_n "checking if $CC supports -Werror=trigraphs... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=trigraphs" >&5 +$as_echo_n "checking if $CC supports-Werror=trigraphs... " >&6; } cacheid=xorg_cv_cc_flag__Werror_trigraphs if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -14937,8 +14931,8 @@ CFLAGS="$CFLAGS -Werror=array-bounds" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=array-bounds" >&5 -$as_echo_n "checking if $CC supports -Werror=array-bounds... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=array-bounds" >&5 +$as_echo_n "checking if $CC supports-Werror=array-bounds... " >&6; } cacheid=xorg_cv_cc_flag__Werror_array_bounds if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -15055,8 +15049,8 @@ CFLAGS="$CFLAGS -Werror=write-strings" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=write-strings" >&5 -$as_echo_n "checking if $CC supports -Werror=write-strings... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=write-strings" >&5 +$as_echo_n "checking if $CC supports-Werror=write-strings... " >&6; } cacheid=xorg_cv_cc_flag__Werror_write_strings if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -15173,8 +15167,8 @@ CFLAGS="$CFLAGS -Werror=address" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=address" >&5 -$as_echo_n "checking if $CC supports -Werror=address... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=address" >&5 +$as_echo_n "checking if $CC supports-Werror=address... " >&6; } cacheid=xorg_cv_cc_flag__Werror_address if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -15291,8 +15285,8 @@ CFLAGS="$CFLAGS -Werror=int-to-pointer-cast" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=int-to-pointer-cast" >&5 -$as_echo_n "checking if $CC supports -Werror=int-to-pointer-cast... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=int-to-pointer-cast" >&5 +$as_echo_n "checking if $CC supports-Werror=int-to-pointer-cast... " >&6; } cacheid=xorg_cv_cc_flag__Werror_int_to_pointer_cast if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -15340,8 +15334,8 @@ CFLAGS="$CFLAGS -errwarn=E_BAD_PTR_INT_COMBINATION" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -errwarn=E_BAD_PTR_INT_COMBINATION" >&5 -$as_echo_n "checking if $CC supports -errwarn=E_BAD_PTR_INT_COMBINATION... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-errwarn=E_BAD_PTR_INT_COMBINATION" >&5 +$as_echo_n "checking if $CC supports-errwarn=E_BAD_PTR_INT_COMBINATION... " >&6; } cacheid=xorg_cv_cc_flag__errwarn_E_BAD_PTR_INT_COMBINATION if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -15458,8 +15452,8 @@ CFLAGS="$CFLAGS -Werror=pointer-to-int-cast" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=pointer-to-int-cast" >&5 -$as_echo_n "checking if $CC supports -Werror=pointer-to-int-cast... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=pointer-to-int-cast" >&5 +$as_echo_n "checking if $CC supports-Werror=pointer-to-int-cast... " >&6; } cacheid=xorg_cv_cc_flag__Werror_pointer_to_int_cast if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -15579,8 +15573,8 @@ CFLAGS="$CFLAGS -Wimplicit" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wimplicit" >&5 -$as_echo_n "checking if $CC supports -Wimplicit... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wimplicit" >&5 +$as_echo_n "checking if $CC supports-Wimplicit... " >&6; } cacheid=xorg_cv_cc_flag__Wimplicit if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -15697,8 +15691,8 @@ CFLAGS="$CFLAGS -Wnonnull" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wnonnull" >&5 -$as_echo_n "checking if $CC supports -Wnonnull... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wnonnull" >&5 +$as_echo_n "checking if $CC supports-Wnonnull... " >&6; } cacheid=xorg_cv_cc_flag__Wnonnull if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -15815,8 +15809,8 @@ CFLAGS="$CFLAGS -Winit-self" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Winit-self" >&5 -$as_echo_n "checking if $CC supports -Winit-self... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Winit-self" >&5 +$as_echo_n "checking if $CC supports-Winit-self... " >&6; } cacheid=xorg_cv_cc_flag__Winit_self if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -15933,8 +15927,8 @@ CFLAGS="$CFLAGS -Wmain" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wmain" >&5 -$as_echo_n "checking if $CC supports -Wmain... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wmain" >&5 +$as_echo_n "checking if $CC supports-Wmain... " >&6; } cacheid=xorg_cv_cc_flag__Wmain if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -16051,8 +16045,8 @@ CFLAGS="$CFLAGS -Wmissing-braces" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wmissing-braces" >&5 -$as_echo_n "checking if $CC supports -Wmissing-braces... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wmissing-braces" >&5 +$as_echo_n "checking if $CC supports-Wmissing-braces... " >&6; } cacheid=xorg_cv_cc_flag__Wmissing_braces if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -16169,8 +16163,8 @@ CFLAGS="$CFLAGS -Wsequence-point" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wsequence-point" >&5 -$as_echo_n "checking if $CC supports -Wsequence-point... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wsequence-point" >&5 +$as_echo_n "checking if $CC supports-Wsequence-point... " >&6; } cacheid=xorg_cv_cc_flag__Wsequence_point if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -16287,8 +16281,8 @@ CFLAGS="$CFLAGS -Wreturn-type" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wreturn-type" >&5 -$as_echo_n "checking if $CC supports -Wreturn-type... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wreturn-type" >&5 +$as_echo_n "checking if $CC supports-Wreturn-type... " >&6; } cacheid=xorg_cv_cc_flag__Wreturn_type if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -16405,8 +16399,8 @@ CFLAGS="$CFLAGS -Wtrigraphs" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wtrigraphs" >&5 -$as_echo_n "checking if $CC supports -Wtrigraphs... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wtrigraphs" >&5 +$as_echo_n "checking if $CC supports-Wtrigraphs... " >&6; } cacheid=xorg_cv_cc_flag__Wtrigraphs if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -16523,8 +16517,8 @@ CFLAGS="$CFLAGS -Warray-bounds" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Warray-bounds" >&5 -$as_echo_n "checking if $CC supports -Warray-bounds... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Warray-bounds" >&5 +$as_echo_n "checking if $CC supports-Warray-bounds... " >&6; } cacheid=xorg_cv_cc_flag__Warray_bounds if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -16641,8 +16635,8 @@ CFLAGS="$CFLAGS -Wwrite-strings" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wwrite-strings" >&5 -$as_echo_n "checking if $CC supports -Wwrite-strings... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wwrite-strings" >&5 +$as_echo_n "checking if $CC supports-Wwrite-strings... " >&6; } cacheid=xorg_cv_cc_flag__Wwrite_strings if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -16759,8 +16753,8 @@ CFLAGS="$CFLAGS -Waddress" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Waddress" >&5 -$as_echo_n "checking if $CC supports -Waddress... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Waddress" >&5 +$as_echo_n "checking if $CC supports-Waddress... " >&6; } cacheid=xorg_cv_cc_flag__Waddress if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -16877,8 +16871,8 @@ CFLAGS="$CFLAGS -Wint-to-pointer-cast" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wint-to-pointer-cast" >&5 -$as_echo_n "checking if $CC supports -Wint-to-pointer-cast... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wint-to-pointer-cast" >&5 +$as_echo_n "checking if $CC supports-Wint-to-pointer-cast... " >&6; } cacheid=xorg_cv_cc_flag__Wint_to_pointer_cast if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -16995,8 +16989,8 @@ CFLAGS="$CFLAGS -Wpointer-to-int-cast" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Wpointer-to-int-cast" >&5 -$as_echo_n "checking if $CC supports -Wpointer-to-int-cast... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Wpointer-to-int-cast" >&5 +$as_echo_n "checking if $CC supports-Wpointer-to-int-cast... " >&6; } cacheid=xorg_cv_cc_flag__Wpointer_to_int_cast if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -17146,8 +17140,8 @@ CFLAGS="$CFLAGS -pedantic" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -pedantic" >&5 -$as_echo_n "checking if $CC supports -pedantic... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-pedantic" >&5 +$as_echo_n "checking if $CC supports-pedantic... " >&6; } cacheid=xorg_cv_cc_flag__pedantic if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -17264,8 +17258,8 @@ CFLAGS="$CFLAGS -Werror" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror" >&5 -$as_echo_n "checking if $CC supports -Werror... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror" >&5 +$as_echo_n "checking if $CC supports-Werror... " >&6; } cacheid=xorg_cv_cc_flag__Werror if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -17313,8 +17307,8 @@ CFLAGS="$CFLAGS -errwarn" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -errwarn" >&5 -$as_echo_n "checking if $CC supports -errwarn... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-errwarn" >&5 +$as_echo_n "checking if $CC supports-errwarn... " >&6; } cacheid=xorg_cv_cc_flag__errwarn if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -17434,8 +17428,8 @@ CFLAGS="$CFLAGS -Werror=attributes" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports -Werror=attributes" >&5 -$as_echo_n "checking if $CC supports -Werror=attributes... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports-Werror=attributes" >&5 +$as_echo_n "checking if $CC supports-Werror=attributes... " >&6; } cacheid=xorg_cv_cc_flag__Werror_attributes if eval \${$cacheid+:} false; then : $as_echo_n "(cached) " >&6 @@ -17602,7 +17596,6 @@ -e 's|__xorgversion__|\"\$(PACKAGE_STRING)\" \"\$(XORG_MAN_PAGE)\"|' \ -e 's|__xservername__|Xorg|g' \ -e 's|__xconfigfile__|xorg.conf|g' \ - -e 's|__xorgconfdir__|xorg.conf.d|g' \ -e 's|__projectroot__|\$(prefix)|g' \ -e 's|__apploaddir__|\$(appdefaultdir)|g' \ -e 's|__appmansuffix__|\$(APP_MAN_SUFFIX)|g' \ @@ -17845,12 +17838,13 @@ pkg_cv_XORG_CFLAGS="$XORG_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.7 xproto inputproto \$REQUIRED_MODULES\""; } >&5 - ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.7 xproto inputproto $REQUIRED_MODULES") 2>&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"inputproto >= 2.1.99.3 xorg-server >= 1.12 xproto inputproto \$REQUIRED_MODULES\""; } >&5 + ($PKG_CONFIG --exists --print-errors "inputproto >= 2.1.99.3 xorg-server >= 1.12 xproto inputproto $REQUIRED_MODULES") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_XORG_CFLAGS=`$PKG_CONFIG --cflags "xorg-server >= 1.7 xproto inputproto $REQUIRED_MODULES" 2>/dev/null` + pkg_cv_XORG_CFLAGS=`$PKG_CONFIG --cflags "inputproto >= 2.1.99.3 xorg-server >= 1.12 xproto inputproto $REQUIRED_MODULES" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi @@ -17861,12 +17855,13 @@ pkg_cv_XORG_LIBS="$XORG_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.7 xproto inputproto \$REQUIRED_MODULES\""; } >&5 - ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.7 xproto inputproto $REQUIRED_MODULES") 2>&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"inputproto >= 2.1.99.3 xorg-server >= 1.12 xproto inputproto \$REQUIRED_MODULES\""; } >&5 + ($PKG_CONFIG --exists --print-errors "inputproto >= 2.1.99.3 xorg-server >= 1.12 xproto inputproto $REQUIRED_MODULES") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_XORG_LIBS=`$PKG_CONFIG --libs "xorg-server >= 1.7 xproto inputproto $REQUIRED_MODULES" 2>/dev/null` + pkg_cv_XORG_LIBS=`$PKG_CONFIG --libs "inputproto >= 2.1.99.3 xorg-server >= 1.12 xproto inputproto $REQUIRED_MODULES" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi @@ -17886,14 +17881,14 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - XORG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xorg-server >= 1.7 xproto inputproto $REQUIRED_MODULES" 2>&1` + XORG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "inputproto >= 2.1.99.3 xorg-server >= 1.12 xproto inputproto $REQUIRED_MODULES" 2>&1` else - XORG_PKG_ERRORS=`$PKG_CONFIG --print-errors "xorg-server >= 1.7 xproto inputproto $REQUIRED_MODULES" 2>&1` + XORG_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "inputproto >= 2.1.99.3 xorg-server >= 1.12 xproto inputproto $REQUIRED_MODULES" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XORG_PKG_ERRORS" >&5 - as_fn_error $? "Package requirements (xorg-server >= 1.7 xproto inputproto $REQUIRED_MODULES) were not met: + as_fn_error $? "Package requirements (inputproto >= 2.1.99.3 xorg-server >= 1.12 xproto inputproto $REQUIRED_MODULES) were not met: $XORG_PKG_ERRORS @@ -17903,7 +17898,6 @@ Alternatively, you may set the environment variables XORG_CFLAGS and XORG_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 - elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } @@ -17919,7 +17913,6 @@ To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } - else XORG_CFLAGS=$pkg_cv_XORG_CFLAGS XORG_LIBS=$pkg_cv_XORG_LIBS @@ -17933,84 +17926,6 @@ sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server` -DRIVER_NAME=synaptics - - - -pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for XI22" >&5 -$as_echo_n "checking for XI22... " >&6; } - -if test -n "$XI22_CFLAGS"; then - pkg_cv_XI22_CFLAGS="$XI22_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"inputproto >= 2.1.99.3 xorg-server >= 1.11.99.901\""; } >&5 - ($PKG_CONFIG --exists --print-errors "inputproto >= 2.1.99.3 xorg-server >= 1.11.99.901") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_XI22_CFLAGS=`$PKG_CONFIG --cflags "inputproto >= 2.1.99.3 xorg-server >= 1.11.99.901" 2>/dev/null` -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$XI22_LIBS"; then - pkg_cv_XI22_LIBS="$XI22_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"inputproto >= 2.1.99.3 xorg-server >= 1.11.99.901\""; } >&5 - ($PKG_CONFIG --exists --print-errors "inputproto >= 2.1.99.3 xorg-server >= 1.11.99.901") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_XI22_LIBS=`$PKG_CONFIG --libs "inputproto >= 2.1.99.3 xorg-server >= 1.11.99.901" 2>/dev/null` -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - XI22_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "inputproto >= 2.1.99.3 xorg-server >= 1.11.99.901" 2>&1` - else - XI22_PKG_ERRORS=`$PKG_CONFIG --print-errors "inputproto >= 2.1.99.3 xorg-server >= 1.11.99.901" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$XI22_PKG_ERRORS" >&5 - - HAVE_XI22="no" -elif test $pkg_failed = untried; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - HAVE_XI22="no" -else - XI22_CFLAGS=$pkg_cv_XI22_CFLAGS - XI22_LIBS=$pkg_cv_XI22_LIBS - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - HAVE_XI22="yes" -fi -if test "x$HAVE_XI22" = xyes; then - -$as_echo "#define HAVE_MULTITOUCH 1" >>confdefs.h - -fi - # ----------------------------------------------------------------------------- # Configuration options # ----------------------------------------------------------------------------- @@ -18086,7 +18001,7 @@ BUILD_PS2COMM="yes" BUILD_PSMCOMM="yes" ;; -*solaris*) +*solaris* | *gnu*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: ps2comm alpscomm" >&5 $as_echo "ps2comm alpscomm" >&6; } BUILD_PS2COMM="yes" @@ -18100,8 +18015,7 @@ $as_echo "#define BUILD_EVENTCOMM 1" >>confdefs.h - if test "x$HAVE_XI22" = xyes; then - # Obtain compiler/linker options for mtdev + # Obtain compiler/linker options for mtdev pkg_failed=no { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MTDEV" >&5 @@ -18117,6 +18031,7 @@ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_MTDEV_CFLAGS=`$PKG_CONFIG --cflags "mtdev" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi @@ -18133,6 +18048,7 @@ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_MTDEV_LIBS=`$PKG_CONFIG --libs "mtdev" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi @@ -18152,9 +18068,9 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - MTDEV_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "mtdev" 2>&1` + MTDEV_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "mtdev" 2>&1` else - MTDEV_PKG_ERRORS=`$PKG_CONFIG --print-errors "mtdev" 2>&1` + MTDEV_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "mtdev" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$MTDEV_PKG_ERRORS" >&5 @@ -18169,7 +18085,6 @@ Alternatively, you may set the environment variables MTDEV_CFLAGS and MTDEV_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 - elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } @@ -18185,7 +18100,6 @@ To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } - else MTDEV_CFLAGS=$pkg_cv_MTDEV_CFLAGS MTDEV_LIBS=$pkg_cv_MTDEV_LIBS @@ -18193,7 +18107,6 @@ $as_echo "yes" >&6; } fi - fi fi if test "x$BUILD_PSMCOMM" = xyes; then @@ -18249,6 +18162,7 @@ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XI_CFLAGS=`$PKG_CONFIG --cflags "x11 inputproto xi >= 1.2" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi @@ -18265,6 +18179,7 @@ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XI_LIBS=`$PKG_CONFIG --libs "x11 inputproto xi >= 1.2" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi @@ -18284,9 +18199,9 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - XI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "x11 inputproto xi >= 1.2" 2>&1` + XI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "x11 inputproto xi >= 1.2" 2>&1` else - XI_PKG_ERRORS=`$PKG_CONFIG --print-errors "x11 inputproto xi >= 1.2" 2>&1` + XI_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "x11 inputproto xi >= 1.2" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XI_PKG_ERRORS" >&5 @@ -18301,7 +18216,6 @@ Alternatively, you may set the environment variables XI_CFLAGS and XI_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 - elif test $pkg_failed = untried; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } @@ -18317,7 +18231,6 @@ To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } - else XI_CFLAGS=$pkg_cv_XI_CFLAGS XI_LIBS=$pkg_cv_XI_LIBS @@ -18344,6 +18257,7 @@ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XTST_CFLAGS=`$PKG_CONFIG --cflags "xtst recordproto" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi @@ -18360,6 +18274,7 @@ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_XTST_LIBS=`$PKG_CONFIG --libs "xtst recordproto" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes fi @@ -18379,9 +18294,9 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - XTST_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xtst recordproto" 2>&1` + XTST_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "xtst recordproto" 2>&1` else - XTST_PKG_ERRORS=`$PKG_CONFIG --print-errors "xtst recordproto" 2>&1` + XTST_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "xtst recordproto" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XTST_PKG_ERRORS" >&5 @@ -18988,7 +18903,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xf86-input-synaptics $as_me 1.6.3, which was +This file was extended by xf86-input-synaptics $as_me 1.7.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -19054,7 +18969,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -xf86-input-synaptics config.status 1.6.3 +xf86-input-synaptics config.status 1.7.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -Nru xserver-xorg-input-synaptics-1.6.3/configure.ac xserver-xorg-input-synaptics-1.7.1/configure.ac --- xserver-xorg-input-synaptics-1.6.3/configure.ac 2013-02-01 05:35:55.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/configure.ac 2013-05-13 00:03:41.000000000 +0000 @@ -23,7 +23,7 @@ # Initialize Autoconf AC_PREREQ([2.60]) AC_INIT([xf86-input-synaptics], - [1.6.3], + [1.7.1], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xf86-input-synaptics]) AC_CONFIG_SRCDIR([Makefile.am]) @@ -54,21 +54,13 @@ XORG_DRIVER_CHECK_EXT(RANDR, randrproto) # Obtain compiler/linker options for the Synaptics driver dependencies -PKG_CHECK_MODULES(XORG, [xorg-server >= 1.7] xproto inputproto $REQUIRED_MODULES) +PKG_CHECK_MODULES(XORG, [inputproto >= 2.1.99.3] [xorg-server >= 1.12] xproto inputproto $REQUIRED_MODULES) # X Server SDK location is required to install Synaptics header files # This location is also relayed in the xorg-synaptics.pc file sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server` AC_SUBST([sdkdir]) -DRIVER_NAME=synaptics -AC_SUBST([DRIVER_NAME]) - -PKG_CHECK_MODULES(XI22, [inputproto >= 2.1.99.3] [xorg-server >= 1.11.99.901], HAVE_XI22="yes", HAVE_XI22="no") -if test "x$HAVE_XI22" = xyes; then - AC_DEFINE(HAVE_MULTITOUCH, 1, [XI2.2 available]) -fi - # ----------------------------------------------------------------------------- # Configuration options # ----------------------------------------------------------------------------- @@ -115,7 +107,7 @@ BUILD_PS2COMM="yes" BUILD_PSMCOMM="yes" ;; -*solaris*) +*solaris* | *gnu*) AC_MSG_RESULT([ps2comm alpscomm]) BUILD_PS2COMM="yes" ;; @@ -126,10 +118,8 @@ if test "x$BUILD_EVENTCOMM" = xyes; then AC_DEFINE(BUILD_EVENTCOMM, 1, [Optional backend eventcomm enabled]) - if test "x$HAVE_XI22" = xyes; then - # Obtain compiler/linker options for mtdev - PKG_CHECK_MODULES(MTDEV, mtdev) - fi + # Obtain compiler/linker options for mtdev + PKG_CHECK_MODULES(MTDEV, mtdev) fi if test "x$BUILD_PSMCOMM" = xyes; then AC_DEFINE(BUILD_PSMCOMM, 1, [Optional backend psmcomm enabled]) diff -Nru xserver-xorg-input-synaptics-1.6.3/debian/changelog xserver-xorg-input-synaptics-1.7.1/debian/changelog --- xserver-xorg-input-synaptics-1.6.3/debian/changelog 2013-07-25 13:48:45.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/debian/changelog 2013-07-25 13:48:45.000000000 +0000 @@ -1,12 +1,10 @@ -xserver-xorg-input-synaptics (1.6.3-0ubuntu1.1) raring; urgency=low +xserver-xorg-input-synaptics (1.7.1-0ubuntu1) saucy; urgency=low * Merge from unreleased debian git. - * 130_reset-num_active_touches-on-deviceoff.patch, use-sigsafe-logging.patch: - Dropped, upstream. - -- Timo Aaltonen Fri, 08 Feb 2013 13:40:38 +0200 + -- Maarten Lankhorst Thu, 25 Jul 2013 15:35:14 +0200 -xserver-xorg-input-synaptics (1.6.3-1) UNRELEASED; urgency=low +xserver-xorg-input-synaptics (1.7.1-1) UNRELEASED; urgency=low [ Maarten Lankhorst ] * New upstream release. @@ -18,6 +16,14 @@ -- Maarten Lankhorst Mon, 16 Jul 2012 14:15:22 +0200 +xserver-xorg-input-synaptics (1.6.3-0ubuntu1.1) raring; urgency=low + + * Merge from unreleased debian git. + * 130_reset-num_active_touches-on-deviceoff.patch, use-sigsafe-logging.patch: + Dropped, upstream. + + -- Timo Aaltonen Fri, 08 Feb 2013 13:40:38 +0200 + xserver-xorg-input-synaptics (1.6.2-2) unstable; urgency=low * Pull latest synaptics-1.6-branch: diff -Nru xserver-xorg-input-synaptics-1.6.3/include/Makefile.am xserver-xorg-input-synaptics-1.7.1/include/Makefile.am --- xserver-xorg-input-synaptics-1.6.3/include/Makefile.am 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/include/Makefile.am 2013-05-13 00:03:25.000000000 +0000 @@ -18,4 +18,4 @@ # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -sdk_HEADERS = synaptics.h synaptics-properties.h +sdk_HEADERS = synaptics-properties.h diff -Nru xserver-xorg-input-synaptics-1.6.3/include/Makefile.in xserver-xorg-input-synaptics-1.7.1/include/Makefile.in --- xserver-xorg-input-synaptics-1.6.3/include/Makefile.in 2013-02-01 05:36:07.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/include/Makefile.in 2013-05-13 00:04:22.000000000 +0000 @@ -158,7 +158,6 @@ DLLTOOL = @DLLTOOL@ DRIVER_MAN_DIR = @DRIVER_MAN_DIR@ DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@ -DRIVER_NAME = @DRIVER_NAME@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ @@ -219,8 +218,6 @@ STRICT_CFLAGS = @STRICT_CFLAGS@ STRIP = @STRIP@ VERSION = @VERSION@ -XI22_CFLAGS = @XI22_CFLAGS@ -XI22_LIBS = @XI22_LIBS@ XI_CFLAGS = @XI_CFLAGS@ XI_LIBS = @XI_LIBS@ XORG_CFLAGS = @XORG_CFLAGS@ @@ -284,7 +281,7 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -sdk_HEADERS = synaptics.h synaptics-properties.h +sdk_HEADERS = synaptics-properties.h all: all-am .SUFFIXES: diff -Nru xserver-xorg-input-synaptics-1.6.3/include/synaptics-properties.h xserver-xorg-input-synaptics-1.7.1/include/synaptics-properties.h --- xserver-xorg-input-synaptics-1.6.3/include/synaptics-properties.h 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/include/synaptics-properties.h 2013-05-13 00:03:25.000000000 +0000 @@ -35,7 +35,7 @@ /* 32 bit, 4 values, left, right, top, bottom */ #define SYNAPTICS_PROP_EDGES "Synaptics Edges" -/* 32 bit, 3 values, low, high, press */ +/* 32 bit, 3 values, low, high, */ #define SYNAPTICS_PROP_FINGER "Synaptics Finger" /* 32 bit */ @@ -72,18 +72,9 @@ /* 8 bit (BOOL), 2 values, vertical, horizontal */ #define SYNAPTICS_PROP_SCROLL_TWOFINGER "Synaptics Two-Finger Scrolling" -/* FLOAT, 4 values, min, max, accel, trackstick */ +/* FLOAT, 4 values, min, max, accel, */ #define SYNAPTICS_PROP_SPEED "Synaptics Move Speed" -/* 32 bit, 2 values, min, max */ -#define SYNAPTICS_PROP_EDGEMOTION_PRESSURE "Synaptics Edge Motion Pressure" - -/* 32 bit, 2 values, min, max */ -#define SYNAPTICS_PROP_EDGEMOTION_SPEED "Synaptics Edge Motion Speed" - -/* 8 bit (BOOL) */ -#define SYNAPTICS_PROP_EDGEMOTION "Synaptics Edge Motion Always" - /* 8 bit (BOOL), 2 values, updown, leftright */ #define SYNAPTICS_PROP_BUTTONSCROLLING "Synaptics Button Scrolling" @@ -125,9 +116,6 @@ #define SYNAPTICS_PROP_CIRCULAR_SCROLLING_TRIGGER "Synaptics Circular Scrolling Trigger" /* 8 bit (BOOL) */ -#define SYNAPTICS_PROP_CIRCULAR_PAD "Synaptics Circular Pad" - -/* 8 bit (BOOL) */ #define SYNAPTICS_PROP_PALM_DETECT "Synaptics Palm Detection" /* 32 bit, 2 values, width, z */ diff -Nru xserver-xorg-input-synaptics-1.6.3/include/synaptics.h xserver-xorg-input-synaptics-1.7.1/include/synaptics.h --- xserver-xorg-input-synaptics-1.6.3/include/synaptics.h 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/include/synaptics.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,71 +0,0 @@ -/* - * Permission to use, copy, modify, distribute, and sell this software - * and its documentation for any purpose is hereby granted without - * fee, provided that the above copyright notice appear in all copies - * and that both that copyright notice and this permission notice - * appear in supporting documentation, and that the name of Red Hat - * not be used in advertising or publicity pertaining to distribution - * of the software without specific, written prior permission. Red - * Hat makes no representations about the suitability of this software - * for any purpose. It is provided "as is" without express or implied - * warranty. - * - * THE AUTHORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN - * NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR - * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS - * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, - * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN - * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#ifndef _SYNAPTICS_H_ -#define _SYNAPTICS_H_ - -#include - -/****************************************************************************** - * Public definitions. - * Used by driver and the shared memory configurator - *****************************************************************************/ -typedef enum { - RT_TAP = 0, /* Right top corner */ - RB_TAP, /* Right bottom corner */ - LT_TAP, /* Left top corner */ - LB_TAP, /* Left bottom corner */ - F1_TAP, /* Non-corner tap, one finger */ - F2_TAP, /* Non-corner tap, two fingers */ - F3_TAP, /* Non-corner tap, three fingers */ - MAX_TAP -} TapEvent; - -typedef enum { - F1_CLICK1 = 0, /* Click left, one finger */ - F2_CLICK1, /* Click left, two fingers */ - F3_CLICK1, /* Click left, three fingers */ - MAX_CLICK -} ClickFingerEvent; - -#define SYN_MAX_BUTTONS 12 /* Max number of mouse buttons */ - -#define SHM_SYNAPTICS 23947 -typedef struct _SynapticsSHM { - int version; /* Driver version */ - - /* Current device state */ - int x, y; /* actual x, y coordinates */ - int z; /* pressure value */ - int numFingers; /* number of fingers */ - int fingerWidth; /* finger width value */ - int left, right, up, down; /* left/right/up/down buttons */ - Bool multi[8]; - Bool middle; -} SynapticsSHM; - -/* - * Minimum and maximum values for scroll_button_repeat - */ -#define SBR_MIN 10 -#define SBR_MAX 1000 - -#endif /* _SYNAPTICS_H_ */ diff -Nru xserver-xorg-input-synaptics-1.6.3/install-sh xserver-xorg-input-synaptics-1.7.1/install-sh --- xserver-xorg-input-synaptics-1.6.3/install-sh 2013-01-15 04:27:04.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/install-sh 2013-07-25 13:48:45.000000000 +0000 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2011-11-20.07; # UTC +scriptversion=2011-01-19.21; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -35,7 +35,7 @@ # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent -# 'make' implicit rules from creating a file called install from it +# `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written @@ -156,7 +156,7 @@ -s) stripcmd=$stripprog;; -t) dst_arg=$2 - # Protect names problematic for 'test' and other utilities. + # Protect names problematic for `test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac @@ -190,7 +190,7 @@ fi shift # arg dst_arg=$arg - # Protect names problematic for 'test' and other utilities. + # Protect names problematic for `test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac @@ -202,7 +202,7 @@ echo "$0: no input file specified." >&2 exit 1 fi - # It's OK to call 'install-sh -d' without argument. + # It's OK to call `install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi @@ -240,7 +240,7 @@ for src do - # Protect names problematic for 'test' and other utilities. + # Protect names problematic for `test' and other utilities. case $src in -* | [=\(\)!]) src=./$src;; esac @@ -354,7 +354,7 @@ if test -z "$dir_arg" || { # Check for POSIX incompatibilities with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writable bit of parent directory when it shouldn't. + # other-writeable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. ls_ld_tmpdir=`ls -ld "$tmpdir"` case $ls_ld_tmpdir in diff -Nru xserver-xorg-input-synaptics-1.6.3/man/Makefile.am xserver-xorg-input-synaptics-1.7.1/man/Makefile.am --- xserver-xorg-input-synaptics-1.6.3/man/Makefile.am 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/man/Makefile.am 2013-05-13 00:03:25.000000000 +0000 @@ -31,10 +31,10 @@ syndaemonman_DATA =$(syndaemonman_PRE:man=@APP_MAN_SUFFIX@) drivermandir = $(DRIVER_MAN_DIR) -driverman_PRE = @DRIVER_NAME@.man +driverman_PRE = synaptics.man driverman_DATA = $(driverman_PRE:man=@DRIVER_MAN_SUFFIX@) -EXTRA_DIST = @DRIVER_NAME@.man synclient.man syndaemon.man +EXTRA_DIST = synaptics.man synclient.man syndaemon.man CLEANFILES = $(driverman_DATA) $(synclientman_DATA) $(syndaemonman_DATA) diff -Nru xserver-xorg-input-synaptics-1.6.3/man/Makefile.in xserver-xorg-input-synaptics-1.7.1/man/Makefile.in --- xserver-xorg-input-synaptics-1.6.3/man/Makefile.in 2013-02-01 05:36:07.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/man/Makefile.in 2013-05-13 00:04:22.000000000 +0000 @@ -160,7 +160,6 @@ DLLTOOL = @DLLTOOL@ DRIVER_MAN_DIR = @DRIVER_MAN_DIR@ DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@ -DRIVER_NAME = @DRIVER_NAME@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ @@ -221,8 +220,6 @@ STRICT_CFLAGS = @STRICT_CFLAGS@ STRIP = @STRIP@ VERSION = @VERSION@ -XI22_CFLAGS = @XI22_CFLAGS@ -XI22_LIBS = @XI22_LIBS@ XI_CFLAGS = @XI_CFLAGS@ XI_LIBS = @XI_LIBS@ XORG_CFLAGS = @XORG_CFLAGS@ @@ -293,9 +290,9 @@ syndaemonman_PRE = syndaemon.man syndaemonman_DATA = $(syndaemonman_PRE:man=@APP_MAN_SUFFIX@) drivermandir = $(DRIVER_MAN_DIR) -driverman_PRE = @DRIVER_NAME@.man +driverman_PRE = synaptics.man driverman_DATA = $(driverman_PRE:man=@DRIVER_MAN_SUFFIX@) -EXTRA_DIST = @DRIVER_NAME@.man synclient.man syndaemon.man +EXTRA_DIST = synaptics.man synclient.man syndaemon.man CLEANFILES = $(driverman_DATA) $(synclientman_DATA) $(syndaemonman_DATA) SUFFIXES = .$(DRIVER_MAN_SUFFIX) .man all: all-am diff -Nru xserver-xorg-input-synaptics-1.6.3/man/synaptics.man xserver-xorg-input-synaptics-1.7.1/man/synaptics.man --- xserver-xorg-input-synaptics-1.6.3/man/synaptics.man 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/man/synaptics.man 2013-05-13 00:03:25.000000000 +0000 @@ -92,11 +92,6 @@ psm FreeBSD psm driver .TE .TP 7 -.BI "Option \*qSHMConfig\*q \*q" boolean \*q -Switch on/off shared memory for run-time debugging. This option does not -have an effect on run-time configuration anymore and is only useful for -hardware event debugging. -.TP 7 .BI "Option \*qLeftEdge\*q \*q" integer \*q X coordinate for left edge. Property: "Synaptics Edges" .TP 7 @@ -117,13 +112,6 @@ When finger pressure goes above this value, the driver counts it as a touch. Property: "Synaptics Finger" .TP 7 -.BI "Option \*qFingerPress\*q \*q" integer \*q -When finger pressure goes above this value, the driver counts it as a -press. -. -Currently a press is equivalent to putting the touchpad in trackstick -emulation mode. Property: "Synaptics Finger" -.TP 7 .BI "Option \*qMaxTapTime\*q \*q" integer \*q Maximum time (in milliseconds) for detecting a tap. Property: "Synaptics Tap Durations" @@ -145,10 +133,6 @@ .B ClickPad support for more details. Property: "Synaptics ClickPad" .TP 7 -.BI "Option \*qFastTaps\*q \*q" boolean \*q -Makes the driver react faster to a single tap, but also makes double -clicks caused by double tapping slower. Property: "Synaptics Tap FastTap" -.TP 7 .BI "Option \*qVertEdgeScroll\*q \*q" boolean \*q Enable vertical scrolling when dragging along the right edge. Property: "Synaptics Edge Scrolling" @@ -176,26 +160,6 @@ .BI "Option \*qHorizScrollDelta\*q \*q" integer \*q Move distance of the finger for a scroll event. Property: "Synaptics Scrolling Distance" -.TP 7 -.BI "Option \*qEdgeMotionMinZ\*q \*q" integer \*q -Finger pressure at which minimum edge motion speed is set. Property: -"Synaptics Edge Motion Pressure" -.TP -.BI "Option \*qEdgeMotionMaxZ\*q \*q" integer \*q -Finger pressure at which maximum edge motion speed is set. Property: -"Synaptics Edge Motion Pressure" -.TP -.BI "Option \*qEdgeMotionMinSpeed\*q \*q" integer \*q -Slowest setting for edge motion speed. Property: "Synaptics Edge Motion Speed" -.TP -.BI "Option \*qEdgeMotionMaxSpeed\*q \*q" integer \*q -Fastest setting for edge motion speed. Property: "Synaptics Edge Motion Speed" -.TP -.BI "Option \*qEdgeMotionUseAlways\*q \*q" boolean \*q -If on, edge motion is also used for normal movements. -. -If off, edge motion is used only when dragging. Property: "Synaptics Edge -Motion Always" .TP .BI "Option \*qMinSpeed\*q \*q" float \*q Minimum speed factor. Property: "Synaptics Move Speed" @@ -207,9 +171,6 @@ Acceleration factor for normal pointer movements. Property: "Synaptics Move Speed" .TP -.BI "Option \*qTrackstickSpeed\*q \*q" float \*q -Speed scale when in trackstick emulation mode. Property: "Synaptics Move Speed" -.TP .BI "Option \*qPressureMotionMinZ\*q \*q" integer \*q Finger pressure at which minimum pressure motion factor is applied. Property: "Synaptics Pressure Motion" @@ -237,41 +198,6 @@ The minimum vertical HW distance required to generate motion events. See \fBHorizHysteresis\fR. .TP -.BI "Option \*qUpDownScrolling\*q \*q" boolean \*q -If on, the up/down buttons generate button 4/5 events. -. -If off, the up button generates a double click and the down button -generates a button 2 event. This option is only available for touchpads with -physical scroll buttons. -Property: "Synaptics Button Scrolling" -.TP -.BI "Option \*qLeftRightScrolling\*q \*q" boolean \*q -If on, the left/right buttons generate button 6/7 events. -. -If off, the left/right buttons both generate button 2 events. -This option is only available for touchpads with physical scroll buttons. -Property: "Synaptics Button Scrolling" -.TP -.BI "Option \*qUpDownScrollRepeat\*q \*q" boolean \*q -If on, and the up/down buttons are used for scrolling -(\fBUpDownScrolling\fR), these buttons will send auto-repeating 4/5 events, -with the delay between repeats determined by \fBScrollButtonRepeat\fR. -This option is only available for touchpads with physical scroll buttons. -Property: "Synaptics Button Scrolling Repeat" -.TP -.BI "Option \*qLeftRightScrollRepeat\*q \*q" boolean \*q -If on, and the left/right buttons are used for scrolling -(\fBLeftRightScrolling\fR), these buttons will send auto-repeating 6/7 events, -with the delay between repeats determined by \fBScrollButtonRepeat\fR. -This option is only available for touchpads with physical scroll buttons. -Property: "Synaptics Button Scrolling Repeat" -.TP -.BI "Option \*qScrollButtonRepeat\*q \*q" integer \*q -The number of milliseconds between repeats of button events 4-7 from the -up/down/left/right scroll buttons. -This option is only available for touchpads with physical scroll buttons. -Property: "Synaptics Button Scrolling Time" -.TP .BI "Option \*qEmulateMidButtonTime\*q \*q" integer \*q Maximum time (in milliseconds) for middle button emulation. Property: "Synaptics Middle Button Timeout" @@ -390,13 +316,6 @@ .TE Property: "Synaptics Circular Scrolling Trigger" .TP -.BI "Option \*qCircularPad\*q \*q" boolean \*q -. -Instead of being a rectangle, the edge is the ellipse enclosed by the -Left/Right/Top/BottomEdge parameters. -. -For circular touchpads. Property: "Synaptics Circular Pad" -.TP .BI "Option \*qPalmDetect\*q \*q" boolean \*q If palm detection should be enabled. . @@ -522,8 +441,10 @@ button, respectively, the second four parameters are the left, right, top, bottom edge of the middle button, respectively. Any of the values may be given as percentage of the touchpad width or height, whichever applies. -If any edge is set to 0, the button is assumed to extend to infinity in the -given direction. Setting all values to 0 disables soft button areas. +If any edge is set to 0 (not 0%), the button is assumed to extend to +infinity in the given direction. Setting all values to 0 (not 0%) disables +soft button areas. Button areas may not overlap, however it is permitted for two +buttons to share an edge value. Property: "Synaptics Soft Button Areas" . @@ -563,9 +484,9 @@ 1, 4 and 7), coordinates to the left of LeftEdge and above TopEdge (area 1) are part of the upper left corner, etc. .PP -A good way to find appropriate edge parameters is to enable the -SHMConfig option and run "synclient \-m 1" to see the x/y coordinates -corresponding to different positions on the touchpad. +A good way to find appropriate edge parameters is to use evtest(1) on the +device to see the x/y coordinates corresponding to different positions on +the touchpad. .PP The perceived physical edges may be adjusted with the AreaLeftEdge, AreaRightEdge, AreaTopEdge, and AreaBottomEdge options. If these values are @@ -652,34 +573,9 @@ is used, and if the pressure is greater than PressureMotionMaxZ, PressureMotionMaxFactor is used. . -By default, PressureMotionMinZ and PressureMotionMaxZ are equal to -EdgeMotionMinZ and EdgeMotionMaxZ. -. For a pressure value between PressureMotionMinZ and PressureMotionMaxZ, the factor is increased linearly. . -.SS Edge motion -When hitting an edge, movement can be automatically continued. -. -If EdgeMotionUseAlways is false, edge motion is only used when -dragging. -. -With EdgeMotionUseAlways set to true, it is also used for normal -cursor movements. -. -.LP -Edge motion speed is calculated by taking into account the amount of -pressure applied to the touchpad. -. -The sensitivity can be adjusted using the EdgeMotion parameters. -. -If the pressure is below EdgeMotionMinZ, EdgeMotionMinSpeed is used, -and if the pressure is greater than EdgeMotionMaxZ, EdgeMotionMaxSpeed -is used. -. -For a pressure value between EdgeMotionMinZ and EdgeMotionMaxZ, the -speed is increased linearly. -. .SS Middle button emulation Since most synaptics touchpad models don't have a button that corresponds to the middle button on a mouse, the driver can emulate @@ -753,26 +649,6 @@ as input. Obviously, the smaller the box the better, but the likelyhood of noise motion coming through also increases. -.SS Trackstick mode -Trackstick emulation mode is entered when pressing the finger hard on -the touchpad. -. -The FingerPress parameter controls the minimum required finger -pressure. -. -If the finger hasn't moved more than MaxTapMove after MaxTapTime has -elapsed, trackstick mode is entered. -. -In this mode, moving the finger slightly in any direction gives a -speed vector that moves the pointer. -. -The TrackstickSpeed parameter controls the ratio between pointer speed -and finger movement distance. -. -Trackstick mode is exited when the finger pressure drops below -FingerLow or when the finger is moved further than MaxTapMove away -from the initial position. - .SS ClickPad support A click pad device has button(s) integrated into the touchpad surface. The user must press downward on the touchpad in order to generated a button @@ -795,8 +671,7 @@ .SH "DEVICE PROPERTIES" Synaptics 1.0 and higher support input device properties if the driver is -running on X server 1.6 or higher. On these driver versions, Option -"SHMConfig" is not needed to enable run-time configuration. The synclient tool +running on X server 1.6 or higher. The synclient tool shipped with synaptics version 1.1 uses input device properties by default. . Properties supported: @@ -826,10 +701,6 @@ 8 bit (Bool). .TP 7 -.BI "Synaptics Tap FastTap" -8 bit (BOOL). - -.TP 7 .BI "Synaptics Middle Button Timeout" 32 bit. @@ -855,29 +726,13 @@ .TP 7 .BI "Synaptics Move Speed" -FLOAT, 4 values, min, max, accel, trackstick. - -.TP 7 -.BI "Synaptics Edge Motion Pressure" -32 bit, 2 values, min, max. - -.TP 7 -.BI "Synaptics Edge Motion Speed" -32 bit, 2 values, min, max. - -.TP 7 -.BI "Synaptics Edge Motion Always" -8 bit (BOOL). +FLOAT, 4 values, min, max, accel, .TP 7 .BI "Synaptics Button Scrolling" 8 bit (BOOL), 2 values, updown, leftright. .TP 7 -.BI "Synaptics Button Scrolling Repeat" -8 bit (BOOL), 2 values, updown, leftright. - -.TP 7 .BI "Synaptics Button Scrolling Time" 32 bit. @@ -1020,6 +875,36 @@ .BI "Option \*qSpecialScrollAreaRight\*q \*q" boolean \*q .TP .BI "Option \*qGuestMouseOff\*q \*q" boolean \*q +.TP +.BI "Option \*qSHMConfig\*q \*q" boolean \*q +.TP +.BI "Option \*qFingerPress\*q \*q" integer \*q +.TP +.BI "Option \*qTrackstickSpeed\*q \*q" float \*q +.TP +.BI "Option \*qFastTaps\*q \*q" boolean \*q +.TP +.BI "Option \*qEdgeMotionMinZ\*q \*q" integer \*q +.TP +.BI "Option \*qEdgeMotionMaxZ\*q \*q" integer \*q +.TP +.BI "Option \*qEdgeMotionMinSpeed\*q \*q" integer \*q +.TP +.BI "Option \*qEdgeMotionMaxSpeed\*q \*q" integer \*q +.TP +.BI "Option \*qEdgeMotionUseAlways\*q \*q" boolean \*q +.TP +.BI "Option \*qUpDownScrolling\*q \*q" boolean \*q +.TP +.BI "Option \*qLeftRightScrolling\*q \*q" boolean \*q +.TP +.BI "Option \*qUpDownScrollRepeat\*q \*q" boolean \*q +.TP +.BI "Option \*qLeftRightScrollRepeat\*q \*q" boolean \*q +.TP +.BI "Option \*qScrollButtonRepeat\*q \*q" integer \*q +.TP +.BI "Option \*qCircularPad\*q \*q" boolean \*q .SH "AUTHORS" .LP diff -Nru xserver-xorg-input-synaptics-1.6.3/man/synclient.man xserver-xorg-input-synaptics-1.7.1/man/synclient.man --- xserver-xorg-input-synaptics-1.6.3/man/synclient.man 2012-04-30 00:33:10.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/man/synclient.man 2013-05-13 00:03:25.000000000 +0000 @@ -6,79 +6,16 @@ synclient \- commandline utility to query and modify Synaptics driver options. .SH "SYNOPSIS" -.LP -synclient [\fI\-m interval\fP] .br -synclient [\fI\-hlV?\fP] [var1=value1 [var2=value2] ...] +synclient [\fI\-lV?\fP] [var1=value1 [var2=value2] ...] .SH "DESCRIPTION" .LP This program lets you change your Synaptics TouchPad driver for XOrg/XFree86 server parameters while X is running. -For the -m and -h options, SHM must be enabled by setting the option SHMConfig -"on" in your XOrg/XFree86 configuration. .SH "OPTIONS" .LP .TP -\fB\-m interval\fR -monitor changes to the touchpad state. -. -Interval specifies how often (in ms) to poll the touchpad state. -. -Whenever a change in the touchpad state is detected, one line of -output is generated that describes the current state of the touchpad. -This option is only available in SHM mode. -. -The following data is included in the output. -.RS -.TP -\fBtime\fR -Time in seconds since the logging was started. -.TP -\fBx,y\fR -The x/y coordinates of the finger on the touchpad. -. -The origin is in the upper left corner. -.TP -\fBz\fR -The "pressure" value. -. -Pressing the finger harder on the touchpad typically produces a larger -value. -. -Note that most touchpads don't measure the real pressure though. -. -Instead, capacitance is usually measured, which is correlated to the -contact area between the finger and the touchpad. -. -Since more pressure usually means a larger contact area, the reported -pressure value is at least indirectly related to the real pressure. -.TP -\fBf\fR -The number of fingers currently touching the touchpad. -. -Note that only some touchpads can report more than one finger. -. -Generally, synaptics touchpads can, but ALPS touchpads can't. -.TP -\fBw\fR -The w value is a measurement of the finger width. -. -This is only supported by some synaptics touchpads. -. -Touchpads that can't measure the finger width typically report a faked -constant value when a finger is touching the touchpad. -.TP -\fBl,r,u,d,m,multi\fR -The state of the left, right, up, down, middle and multi buttons. -. -Zero means not pressed, one means pressed. -. -Not all touchpads have all these buttons. -. -If a button doesn't exist, the value is always reported as 0. -.RE -.TP \fB\-l\fR List current user settings. This is the default if no option is given. .TP @@ -91,21 +28,14 @@ \fBvar=value\fR Set user parameter \fIvar\fR to \fIvalue\fR. - .SH "FILES" .LP \fI/etc/X11/xorg.conf\fP -.LP -\fI/etc/X11/XF86Config\-4\fP .SH "EXAMPLES" .LP -To disable EdgeMotionSpeed: -.LP -synclient EdgeMotionSpeed=0 -.LP -To monitor touchpad events (requires SHM): +To disable EdgeMotionMinSpeed: .LP -synclient \-m 100 +synclient EdgeMotionMinSpeed=0 .SH "AUTHORS" .LP Peter Osterlund and many others. diff -Nru xserver-xorg-input-synaptics-1.6.3/man/syndaemon.man xserver-xorg-input-synaptics-1.7.1/man/syndaemon.man --- xserver-xorg-input-synaptics-1.6.3/man/syndaemon.man 2012-08-21 05:19:17.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/man/syndaemon.man 2013-05-13 00:03:25.000000000 +0000 @@ -61,6 +61,10 @@ \fB\-R\fP Use the XRecord extension for detecting keyboard activity instead of polling the keyboard state. +.LP +.TP +\fB\-?\fP +Show the help message. .SH "ENVIRONMENT VARIABLES" .LP .TP diff -Nru xserver-xorg-input-synaptics-1.6.3/missing xserver-xorg-input-synaptics-1.7.1/missing --- xserver-xorg-input-synaptics-1.6.3/missing 2013-01-15 04:27:04.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/missing 2013-07-25 13:48:45.000000000 +0000 @@ -1,9 +1,10 @@ #! /bin/sh # Common stub for a few missing GNU programs while installing. -scriptversion=2012-01-06.18; # UTC +scriptversion=2012-01-06.13; # UTC -# Copyright (C) 1996-2012 Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, +# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. # Originally by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify @@ -25,7 +26,7 @@ # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then - echo 1>&2 "Try '$0 --help' for more information" + echo 1>&2 "Try \`$0 --help' for more information" exit 1 fi @@ -33,7 +34,7 @@ sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' sed_minuso='s/.* -o \([^ ]*\).*/\1/p' -# In the cases where this matters, 'missing' is being run in the +# In the cases where this matters, `missing' is being run in the # srcdir already. if test -f configure.ac; then configure_ac=configure.ac @@ -64,7 +65,7 @@ echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... -Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an +Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an error status if there is no known handling for PROGRAM. Options: @@ -73,20 +74,20 @@ --run try to run the given command, and emulate it if it fails Supported PROGRAM values: - aclocal touch file 'aclocal.m4' - autoconf touch file 'configure' - autoheader touch file 'config.h.in' + aclocal touch file \`aclocal.m4' + autoconf touch file \`configure' + autoheader touch file \`config.h.in' autom4te touch the output file, or create a stub one - automake touch all 'Makefile.in' files - bison create 'y.tab.[ch]', if possible, from existing .[ch] - flex create 'lex.yy.c', if possible, from existing .c + automake touch all \`Makefile.in' files + bison create \`y.tab.[ch]', if possible, from existing .[ch] + flex create \`lex.yy.c', if possible, from existing .c help2man touch the output file - lex create 'lex.yy.c', if possible, from existing .c + lex create \`lex.yy.c', if possible, from existing .c makeinfo touch the output file - yacc create 'y.tab.[ch]', if possible, from existing .[ch] + yacc create \`y.tab.[ch]', if possible, from existing .[ch] -Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and -'g' are ignored when checking the name. +Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and +\`g' are ignored when checking the name. Send bug reports to ." exit $? @@ -98,8 +99,8 @@ ;; -*) - echo 1>&2 "$0: Unknown '$1' option" - echo 1>&2 "Try '$0 --help' for more information" + echo 1>&2 "$0: Unknown \`$1' option" + echo 1>&2 "Try \`$0 --help' for more information" exit 1 ;; @@ -126,7 +127,7 @@ exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then # Could not run --version or --help. This is probably someone - # running '$TOOL --version' or '$TOOL --help' to check whether + # running `$TOOL --version' or `$TOOL --help' to check whether # $TOOL exists and not knowing $TOOL uses missing. exit 1 fi @@ -138,27 +139,27 @@ case $program in aclocal*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified 'acinclude.m4' or '${configure_ac}'. You might want - to install the Automake and Perl packages. Grab them from +WARNING: \`$1' is $msg. You should only need it if + you modified \`acinclude.m4' or \`${configure_ac}'. You might want + to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." touch aclocal.m4 ;; autoconf*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified '${configure_ac}'. You might want to install the - Autoconf and GNU m4 packages. Grab them from any GNU +WARNING: \`$1' is $msg. You should only need it if + you modified \`${configure_ac}'. You might want to install the + \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." touch configure ;; autoheader*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified 'acconfig.h' or '${configure_ac}'. You might want - to install the Autoconf and GNU m4 packages. Grab them +WARNING: \`$1' is $msg. You should only need it if + you modified \`acconfig.h' or \`${configure_ac}'. You might want + to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` test -z "$files" && files="config.h" @@ -175,9 +176,9 @@ automake*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'. - You might want to install the Automake and Perl packages. +WARNING: \`$1' is $msg. You should only need it if + you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. + You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." find . -type f -name Makefile.am -print | sed 's/\.am$/.in/' | @@ -186,10 +187,10 @@ autom4te*) echo 1>&2 "\ -WARNING: '$1' is needed, but is $msg. +WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the proper tools for further handling them. - You can get '$1' as part of Autoconf from any GNU + You can get \`$1' as part of \`Autoconf' from any GNU archive site." file=`echo "$*" | sed -n "$sed_output"` @@ -209,10 +210,10 @@ bison*|yacc*) echo 1>&2 "\ -WARNING: '$1' $msg. You should only need it if - you modified a '.y' file. You may need the Bison package +WARNING: \`$1' $msg. You should only need it if + you modified a \`.y' file. You may need the \`Bison' package in order for those modifications to take effect. You can get - Bison from any GNU archive site." + \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h if test $# -ne 1; then eval LASTARG=\${$#} @@ -239,10 +240,10 @@ lex*|flex*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified a '.l' file. You may need the Flex package +WARNING: \`$1' is $msg. You should only need it if + you modified a \`.l' file. You may need the \`Flex' package in order for those modifications to take effect. You can get - Flex from any GNU archive site." + \`Flex' from any GNU archive site." rm -f lex.yy.c if test $# -ne 1; then eval LASTARG=\${$#} @@ -262,10 +263,10 @@ help2man*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if +WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the - Help2man package in order for those modifications to take - effect. You can get Help2man from any GNU archive site." + \`Help2man' package in order for those modifications to take + effect. You can get \`Help2man' from any GNU archive site." file=`echo "$*" | sed -n "$sed_output"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` @@ -280,12 +281,12 @@ makeinfo*) echo 1>&2 "\ -WARNING: '$1' is $msg. You should only need it if - you modified a '.texi' or '.texinfo' file, or any other file +WARNING: \`$1' is $msg. You should only need it if + you modified a \`.texi' or \`.texinfo' file, or any other file indirectly affecting the aspect of the manual. The spurious - call might also be the consequence of using a buggy 'make' (AIX, - DU, IRIX). You might want to install the Texinfo package or - the GNU make package. Grab either from any GNU archive site." + call might also be the consequence of using a buggy \`make' (AIX, + DU, IRIX). You might want to install the \`Texinfo' package or + the \`GNU make' package. Grab either from any GNU archive site." # The file to touch is that specified with -o ... file=`echo "$*" | sed -n "$sed_output"` test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` @@ -309,12 +310,12 @@ *) echo 1>&2 "\ -WARNING: '$1' is needed, and is $msg. +WARNING: \`$1' is needed, and is $msg. You might have modified some files without having the - proper tools for further handling them. Check the 'README' file, + proper tools for further handling them. Check the \`README' file, it often tells you about the needed prerequisites for installing this package. You may also peek at any GNU archive site, in case - some other package would contain this missing '$1' program." + some other package would contain this missing \`$1' program." exit 1 ;; esac diff -Nru xserver-xorg-input-synaptics-1.6.3/src/Makefile.am xserver-xorg-input-synaptics-1.7.1/src/Makefile.am --- xserver-xorg-input-synaptics-1.6.3/src/Makefile.am 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/Makefile.am 2013-05-13 00:03:25.000000000 +0000 @@ -24,32 +24,34 @@ # -avoid-version prevents gratuitous .0.0.0 version numbers on the end # _ladir passes a dummy rpath to libtool so the thing will actually link # TODO: -nostdlib/-Bstatic/-lgcc platform magic, not installing the .a, etc. -@DRIVER_NAME@_drv_la_LTLIBRARIES = @DRIVER_NAME@_drv.la -@DRIVER_NAME@_drv_la_LDFLAGS = -module -avoid-version -@DRIVER_NAME@_drv_ladir = @inputdir@ +synaptics_drv_la_LTLIBRARIES = synaptics_drv.la +synaptics_drv_la_LDFLAGS = -module -avoid-version +synaptics_drv_ladir = @inputdir@ AM_CPPFLAGS = -I$(top_srcdir)/include AM_CFLAGS = $(XORG_CFLAGS) -@DRIVER_NAME@_drv_la_SOURCES = @DRIVER_NAME@.c synapticsstr.h \ +synaptics_drv_la_SOURCES = \ + synaptics.c \ + synapticsstr.h \ synproto.c \ synproto.h \ properties.c if BUILD_PS2COMM -@DRIVER_NAME@_drv_la_SOURCES += \ +synaptics_drv_la_SOURCES += \ alpscomm.c \ ps2comm.c ps2comm.h endif if BUILD_EVENTCOMM -@DRIVER_NAME@_drv_la_SOURCES += \ +synaptics_drv_la_SOURCES += \ eventcomm.c eventcomm.h -@DRIVER_NAME@_drv_la_LIBADD = \ +synaptics_drv_la_LIBADD = \ $(MTDEV_LIBS) endif if BUILD_PSMCOMM -@DRIVER_NAME@_drv_la_SOURCES += \ +synaptics_drv_la_SOURCES += \ psmcomm.c endif diff -Nru xserver-xorg-input-synaptics-1.6.3/src/Makefile.in xserver-xorg-input-synaptics-1.7.1/src/Makefile.in --- xserver-xorg-input-synaptics-1.6.3/src/Makefile.in 2013-02-01 05:36:08.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/Makefile.in 2013-05-13 00:04:22.000000000 +0000 @@ -118,29 +118,28 @@ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } -am__installdirs = "$(DESTDIR)$(@DRIVER_NAME@_drv_ladir)" -LTLIBRARIES = $(@DRIVER_NAME@_drv_la_LTLIBRARIES) +am__installdirs = "$(DESTDIR)$(synaptics_drv_ladir)" +LTLIBRARIES = $(synaptics_drv_la_LTLIBRARIES) am__DEPENDENCIES_1 = -@BUILD_EVENTCOMM_TRUE@@DRIVER_NAME@_drv_la_DEPENDENCIES = \ +@BUILD_EVENTCOMM_TRUE@synaptics_drv_la_DEPENDENCIES = \ @BUILD_EVENTCOMM_TRUE@ $(am__DEPENDENCIES_1) -am__@DRIVER_NAME@_drv_la_SOURCES_DIST = @DRIVER_NAME@.c synapticsstr.h \ +am__synaptics_drv_la_SOURCES_DIST = synaptics.c synapticsstr.h \ synproto.c synproto.h properties.c alpscomm.c ps2comm.c \ ps2comm.h eventcomm.c eventcomm.h psmcomm.c @BUILD_PS2COMM_TRUE@am__objects_1 = alpscomm.lo ps2comm.lo @BUILD_EVENTCOMM_TRUE@am__objects_2 = eventcomm.lo @BUILD_PSMCOMM_TRUE@am__objects_3 = psmcomm.lo -am_@DRIVER_NAME@_drv_la_OBJECTS = @DRIVER_NAME@.lo synproto.lo \ - properties.lo $(am__objects_1) $(am__objects_2) \ - $(am__objects_3) -@DRIVER_NAME@_drv_la_OBJECTS = $(am_@DRIVER_NAME@_drv_la_OBJECTS) +am_synaptics_drv_la_OBJECTS = synaptics.lo synproto.lo properties.lo \ + $(am__objects_1) $(am__objects_2) $(am__objects_3) +synaptics_drv_la_OBJECTS = $(am_synaptics_drv_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent am__v_lt_1 = -@DRIVER_NAME@_drv_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ +synaptics_drv_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(AM_CFLAGS) $(CFLAGS) $(@DRIVER_NAME@_drv_la_LDFLAGS) \ - $(LDFLAGS) -o $@ + $(AM_CFLAGS) $(CFLAGS) $(synaptics_drv_la_LDFLAGS) $(LDFLAGS) \ + -o $@ AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false @@ -175,8 +174,8 @@ am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = -SOURCES = $(@DRIVER_NAME@_drv_la_SOURCES) -DIST_SOURCES = $(am__@DRIVER_NAME@_drv_la_SOURCES_DIST) +SOURCES = $(synaptics_drv_la_SOURCES) +DIST_SOURCES = $(am__synaptics_drv_la_SOURCES_DIST) am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ @@ -211,7 +210,6 @@ DLLTOOL = @DLLTOOL@ DRIVER_MAN_DIR = @DRIVER_MAN_DIR@ DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@ -DRIVER_NAME = @DRIVER_NAME@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ @@ -272,8 +270,6 @@ STRICT_CFLAGS = @STRICT_CFLAGS@ STRIP = @STRIP@ VERSION = @VERSION@ -XI22_CFLAGS = @XI22_CFLAGS@ -XI22_LIBS = @XI22_LIBS@ XI_CFLAGS = @XI_CFLAGS@ XI_LIBS = @XI_LIBS@ XORG_CFLAGS = @XORG_CFLAGS@ @@ -343,15 +339,15 @@ # -avoid-version prevents gratuitous .0.0.0 version numbers on the end # _ladir passes a dummy rpath to libtool so the thing will actually link # TODO: -nostdlib/-Bstatic/-lgcc platform magic, not installing the .a, etc. -@DRIVER_NAME@_drv_la_LTLIBRARIES = @DRIVER_NAME@_drv.la -@DRIVER_NAME@_drv_la_LDFLAGS = -module -avoid-version -@DRIVER_NAME@_drv_ladir = @inputdir@ +synaptics_drv_la_LTLIBRARIES = synaptics_drv.la +synaptics_drv_la_LDFLAGS = -module -avoid-version +synaptics_drv_ladir = @inputdir@ AM_CPPFLAGS = -I$(top_srcdir)/include AM_CFLAGS = $(XORG_CFLAGS) -@DRIVER_NAME@_drv_la_SOURCES = @DRIVER_NAME@.c synapticsstr.h \ - synproto.c synproto.h properties.c $(am__append_1) \ - $(am__append_2) $(am__append_3) -@BUILD_EVENTCOMM_TRUE@@DRIVER_NAME@_drv_la_LIBADD = \ +synaptics_drv_la_SOURCES = synaptics.c synapticsstr.h synproto.c \ + synproto.h properties.c $(am__append_1) $(am__append_2) \ + $(am__append_3) +@BUILD_EVENTCOMM_TRUE@synaptics_drv_la_LIBADD = \ @BUILD_EVENTCOMM_TRUE@ $(MTDEV_LIBS) all: all-am @@ -388,33 +384,33 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): -install-@DRIVER_NAME@_drv_laLTLIBRARIES: $(@DRIVER_NAME@_drv_la_LTLIBRARIES) +install-synaptics_drv_laLTLIBRARIES: $(synaptics_drv_la_LTLIBRARIES) @$(NORMAL_INSTALL) - @list='$(@DRIVER_NAME@_drv_la_LTLIBRARIES)'; test -n "$(@DRIVER_NAME@_drv_ladir)" || list=; \ + @list='$(synaptics_drv_la_LTLIBRARIES)'; test -n "$(synaptics_drv_ladir)" || list=; \ list2=; for p in $$list; do \ if test -f $$p; then \ list2="$$list2 $$p"; \ else :; fi; \ done; \ test -z "$$list2" || { \ - echo " $(MKDIR_P) '$(DESTDIR)$(@DRIVER_NAME@_drv_ladir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(@DRIVER_NAME@_drv_ladir)" || exit 1; \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(@DRIVER_NAME@_drv_ladir)'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(@DRIVER_NAME@_drv_ladir)"; \ + echo " $(MKDIR_P) '$(DESTDIR)$(synaptics_drv_ladir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(synaptics_drv_ladir)" || exit 1; \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(synaptics_drv_ladir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(synaptics_drv_ladir)"; \ } -uninstall-@DRIVER_NAME@_drv_laLTLIBRARIES: +uninstall-synaptics_drv_laLTLIBRARIES: @$(NORMAL_UNINSTALL) - @list='$(@DRIVER_NAME@_drv_la_LTLIBRARIES)'; test -n "$(@DRIVER_NAME@_drv_ladir)" || list=; \ + @list='$(synaptics_drv_la_LTLIBRARIES)'; test -n "$(synaptics_drv_ladir)" || list=; \ for p in $$list; do \ $(am__strip_dir) \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(@DRIVER_NAME@_drv_ladir)/$$f'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(@DRIVER_NAME@_drv_ladir)/$$f"; \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(synaptics_drv_ladir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(synaptics_drv_ladir)/$$f"; \ done -clean-@DRIVER_NAME@_drv_laLTLIBRARIES: - -test -z "$(@DRIVER_NAME@_drv_la_LTLIBRARIES)" || rm -f $(@DRIVER_NAME@_drv_la_LTLIBRARIES) - @list='$(@DRIVER_NAME@_drv_la_LTLIBRARIES)'; \ +clean-synaptics_drv_laLTLIBRARIES: + -test -z "$(synaptics_drv_la_LTLIBRARIES)" || rm -f $(synaptics_drv_la_LTLIBRARIES) + @list='$(synaptics_drv_la_LTLIBRARIES)'; \ locs=`for p in $$list; do echo $$p; done | \ sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ sort -u`; \ @@ -422,8 +418,8 @@ echo rm -f $${locs}; \ rm -f $${locs}; \ } -@DRIVER_NAME@_drv.la: $(@DRIVER_NAME@_drv_la_OBJECTS) $(@DRIVER_NAME@_drv_la_DEPENDENCIES) $(EXTRA_@DRIVER_NAME@_drv_la_DEPENDENCIES) - $(AM_V_CCLD)$(@DRIVER_NAME@_drv_la_LINK) -rpath $(@DRIVER_NAME@_drv_ladir) $(@DRIVER_NAME@_drv_la_OBJECTS) $(@DRIVER_NAME@_drv_la_LIBADD) $(LIBS) +synaptics_drv.la: $(synaptics_drv_la_OBJECTS) $(synaptics_drv_la_DEPENDENCIES) $(EXTRA_synaptics_drv_la_DEPENDENCIES) + $(AM_V_CCLD)$(synaptics_drv_la_LINK) -rpath $(synaptics_drv_ladir) $(synaptics_drv_la_OBJECTS) $(synaptics_drv_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -431,12 +427,12 @@ distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/@DRIVER_NAME@.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/alpscomm.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eventcomm.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/properties.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ps2comm.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/psmcomm.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/synaptics.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/synproto.Plo@am__quote@ .c.o: @@ -566,7 +562,7 @@ check: check-am all-am: Makefile $(LTLIBRARIES) installdirs: - for dir in "$(DESTDIR)$(@DRIVER_NAME@_drv_ladir)"; do \ + for dir in "$(DESTDIR)$(synaptics_drv_ladir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am @@ -601,8 +597,8 @@ @echo "it deletes files that may require special tools to rebuild." clean: clean-am -clean-am: clean-@DRIVER_NAME@_drv_laLTLIBRARIES clean-generic \ - clean-libtool mostlyclean-am +clean-am: clean-generic clean-libtool \ + clean-synaptics_drv_laLTLIBRARIES mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) @@ -622,7 +618,7 @@ info-am: -install-data-am: install-@DRIVER_NAME@_drv_laLTLIBRARIES +install-data-am: install-synaptics_drv_laLTLIBRARIES install-dvi: install-dvi-am @@ -668,25 +664,25 @@ ps-am: -uninstall-am: uninstall-@DRIVER_NAME@_drv_laLTLIBRARIES +uninstall-am: uninstall-synaptics_drv_laLTLIBRARIES .MAKE: install-am install-strip -.PHONY: CTAGS GTAGS all all-am check check-am clean \ - clean-@DRIVER_NAME@_drv_laLTLIBRARIES clean-generic \ - clean-libtool cscopelist ctags distclean distclean-compile \ - distclean-generic distclean-libtool distclean-tags distdir dvi \ - dvi-am html html-am info info-am install \ - install-@DRIVER_NAME@_drv_laLTLIBRARIES install-am \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ +.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ + clean-libtool clean-synaptics_drv_laLTLIBRARIES cscopelist \ + ctags distclean distclean-compile distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip \ + install-synaptics_drv_laLTLIBRARIES installcheck \ + installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - tags uninstall uninstall-@DRIVER_NAME@_drv_laLTLIBRARIES \ - uninstall-am + tags uninstall uninstall-am \ + uninstall-synaptics_drv_laLTLIBRARIES # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nru xserver-xorg-input-synaptics-1.6.3/src/alpscomm.c xserver-xorg-input-synaptics-1.7.1/src/alpscomm.c --- xserver-xorg-input-synaptics-1.6.3/src/alpscomm.c 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/alpscomm.c 2013-05-13 00:03:25.000000000 +0000 @@ -34,7 +34,6 @@ #include #include "synproto.h" -#include "synaptics.h" #include "synapticsstr.h" #include "ps2comm.h" #include diff -Nru xserver-xorg-input-synaptics-1.6.3/src/eventcomm.c xserver-xorg-input-synaptics-1.7.1/src/eventcomm.c --- xserver-xorg-input-synaptics-1.6.3/src/eventcomm.c 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/eventcomm.c 2013-05-13 00:03:25.000000000 +0000 @@ -1,5 +1,6 @@ /* * Copyright © 2004-2007 Peter Osterlund + * Copyright © 2008-2012 Red Hat, Inc. * * Permission to use, copy, modify, distribute, and sell this software * and its documentation for any purpose is hereby granted without @@ -29,6 +30,7 @@ #endif #include +#include #include "eventcomm.h" #include #include @@ -38,12 +40,9 @@ #include #include #include "synproto.h" -#include "synaptics.h" #include "synapticsstr.h" #include -#ifdef HAVE_MULTITOUCH #include -#endif #ifndef INPUT_PROP_BUTTONPAD #define INPUT_PROP_BUTTONPAD 0x02 @@ -72,13 +71,11 @@ BOOL need_grab; int st_to_mt_offset[2]; double st_to_mt_scale[2]; -#ifdef HAVE_MULTITOUCH struct mtdev *mtdev; int axis_map[MT_ABS_SIZE]; int cur_slot; ValuatorMask **last_mt_vals; int num_touches; -#endif }; struct eventcomm_proto_data * @@ -96,7 +93,6 @@ return proto_data; } -#ifdef HAVE_MULTITOUCH static int last_mt_vals_slot(const SynapticsPrivate * priv) { @@ -179,7 +175,6 @@ valuator_mask_set(proto_data->last_mt_vals[i], 4 + j, 0); } } -#endif static Bool EventDeviceOnHook(InputInfoPtr pInfo, SynapticsParameters * para) @@ -202,9 +197,7 @@ proto_data->need_grab = FALSE; -#ifdef HAVE_MULTITOUCH InitializeTouch(pInfo); -#endif return TRUE; } @@ -212,9 +205,7 @@ static Bool EventDeviceOffHook(InputInfoPtr pInfo) { -#ifdef HAVE_MULTITOUCH UninitializeTouch(pInfo); -#endif return Success; } @@ -284,20 +275,23 @@ return (ret == TRUE); } -typedef struct { +#define PRODUCT_ANY 0x0000 + +struct model_lookup_t { short vendor; - short product; + short product_start; + short product_end; enum TouchpadModel model; -} model_lookup_t; +}; -#define PRODUCT_ANY 0x0000 -static model_lookup_t model_lookup_table[] = { - {0x0002, 0x0007, MODEL_SYNAPTICS}, - {0x0002, 0x0008, MODEL_ALPS}, - {0x05ac, PRODUCT_ANY, MODEL_APPLETOUCH}, - {0x0002, 0x000e, MODEL_ELANTECH}, - {0x0, 0x0, 0x0} +static struct model_lookup_t model_lookup_table[] = { + {0x0002, 0x0007, 0x0007, MODEL_SYNAPTICS}, + {0x0002, 0x0008, 0x0008, MODEL_ALPS}, + {0x05ac, PRODUCT_ANY, 0x222, MODEL_APPLETOUCH}, + {0x05ac, 0x223, PRODUCT_ANY, MODEL_UNIBODY_MACBOOK}, + {0x0002, 0x000e, 0x000e, MODEL_ELANTECH}, + {0x0, 0x0, 0x0, 0x0} }; /** @@ -316,7 +310,7 @@ { struct input_id id; int rc; - model_lookup_t *model_lookup; + struct model_lookup_t *model_lookup; SYSCALL(rc = ioctl(fd, EVIOCGID, &id)); if (rc < 0) @@ -325,8 +319,10 @@ for (model_lookup = model_lookup_table; model_lookup->vendor; model_lookup++) { if (model_lookup->vendor == id.vendor && - (model_lookup->product == id.product || - model_lookup->product == PRODUCT_ANY)) + (model_lookup->product_start == PRODUCT_ANY || + model_lookup->product_start <= id.product) && + (model_lookup->product_end == PRODUCT_ANY || + model_lookup->product_end >= id.product)) *model_out = model_lookup->model; } @@ -415,7 +411,6 @@ event_get_abs(pInfo, pInfo->fd, ABS_TOOL_WIDTH, &priv->minw, &priv->maxw, NULL, NULL); -#if HAVE_MULTITOUCH if (priv->has_touch) { int st_minx = priv->minx; int st_maxx = priv->maxx; @@ -434,7 +429,6 @@ proto_data->st_to_mt_scale[1] = (priv->maxy - priv->miny) / (st_maxy - st_miny); } -#endif SYSCALL(rc = ioctl(pInfo->fd, EVIOCGBIT(EV_KEY, sizeof(keybits)), keybits)); if (rc >= 0) { @@ -451,10 +445,10 @@ } /* Now print the device information */ - xf86IDrvMsg(pInfo, X_PROBED, "x-axis range %d - %d\n", - priv->minx, priv->maxx); - xf86IDrvMsg(pInfo, X_PROBED, "y-axis range %d - %d\n", - priv->miny, priv->maxy); + xf86IDrvMsg(pInfo, X_PROBED, "x-axis range %d - %d (res %d)\n", + priv->minx, priv->maxx, priv->resx); + xf86IDrvMsg(pInfo, X_PROBED, "y-axis range %d - %d (res %d)\n", + priv->miny, priv->maxy, priv->resy); if (priv->has_pressure) xf86IDrvMsg(pInfo, X_PROBED, "pressure range %d - %d\n", priv->minp, priv->maxp); @@ -501,19 +495,15 @@ static Bool SynapticsReadEvent(InputInfoPtr pInfo, struct input_event *ev) { -#ifdef HAVE_MULTITOUCH SynapticsPrivate *priv = (SynapticsPrivate *) pInfo->private; struct eventcomm_proto_data *proto_data = priv->proto_data; -#endif int rc = TRUE; ssize_t len; -#ifdef HAVE_MULTITOUCH if (proto_data->mtdev) len = mtdev_get(proto_data->mtdev, pInfo->fd, ev, 1) * sizeof(struct input_event); else -#endif len = read(pInfo->fd, ev, sizeof(*ev)); if (len <= 0) { /* We use X_NONE here because it doesn't alloc */ @@ -530,7 +520,6 @@ return rc; } -#ifdef HAVE_MULTITOUCH static Bool EventTouchSlotPreviouslyOpen(SynapticsPrivate * priv, int slot) { @@ -542,13 +531,11 @@ return FALSE; } -#endif static void EventProcessTouchEvent(InputInfoPtr pInfo, struct SynapticsHwState *hw, struct input_event *ev) { -#ifdef HAVE_MULTITOUCH SynapticsPrivate *priv = (SynapticsPrivate *) pInfo->private; struct eventcomm_proto_data *proto_data = priv->proto_data; @@ -570,14 +557,8 @@ if (ev->value >= 0) { hw->slot_state[slot_index] = SLOTSTATE_OPEN; proto_data->num_touches++; - - if (slot_index >= 0) - valuator_mask_copy(hw->mt_mask[slot_index], - proto_data->last_mt_vals[slot_index]); - else - xf86IDrvMsg(pInfo, X_WARNING, - "Attempted to copy values from out-of-range " - "slot, touch events may be incorrect.\n"); + valuator_mask_copy(hw->mt_mask[slot_index], + proto_data->last_mt_vals[slot_index]); } else if (hw->slot_state[slot_index] != SLOTSTATE_EMPTY) { hw->slot_state[slot_index] = SLOTSTATE_CLOSE; @@ -585,25 +566,21 @@ } } else { + ValuatorMask *mask = proto_data->last_mt_vals[slot_index]; int map = proto_data->axis_map[ev->code - ABS_MT_TOUCH_MAJOR]; + int last_val = valuator_mask_get(mask, map); valuator_mask_set(hw->mt_mask[slot_index], map, ev->value); - if (slot_index >= 0) { - ValuatorMask *mask = proto_data->last_mt_vals[slot_index]; - int last_val = valuator_mask_get(mask, map); - - if (EventTouchSlotPreviouslyOpen(priv, slot_index)) { - if (ev->code == ABS_MT_POSITION_X) - hw->cumulative_dx += ev->value - last_val; - else if (ev->code == ABS_MT_POSITION_Y) - hw->cumulative_dy += ev->value - last_val; - } - - valuator_mask_set(mask, map, ev->value); + if (EventTouchSlotPreviouslyOpen(priv, slot_index)) { + if (ev->code == ABS_MT_POSITION_X) + hw->cumulative_dx += ev->value - last_val; + else if (ev->code == ABS_MT_POSITION_Y) + hw->cumulative_dy += ev->value - last_val; } + + valuator_mask_set(mask, map, ev->value); } } -#endif } /** @@ -628,10 +605,8 @@ else if (comm->threeFingers) fingers = 3; -#ifdef HAVE_MULTITOUCH if (priv->has_touch && proto_data->num_touches > fingers) fingers = proto_data->num_touches; -#endif return fingers; } @@ -762,7 +737,6 @@ return strncmp(EVENT_DEV_NAME, dir->d_name, 5) == 0; } -#ifdef HAVE_MULTITOUCH static void event_query_touch(InputInfoPtr pInfo) { @@ -880,7 +854,6 @@ out: mtdev_close_delete(mtdev); } -#endif /** * Probe the open device for dimensions. @@ -890,25 +863,17 @@ { SynapticsPrivate *priv = (SynapticsPrivate *) pInfo->private; struct eventcomm_proto_data *proto_data = priv->proto_data; - -#ifdef HAVE_MULTITOUCH int i; -#endif proto_data = EventProtoDataAlloc(); priv->proto_data = proto_data; -#ifdef HAVE_MULTITOUCH for (i = 0; i < MT_ABS_SIZE; i++) proto_data->axis_map[i] = -1; proto_data->cur_slot = -1; -#endif - if (event_query_is_touchpad - (pInfo->fd, (proto_data) ? proto_data->need_grab : TRUE)) { -#ifdef HAVE_MULTITOUCH + if (event_query_is_touchpad(pInfo->fd, proto_data->need_grab)) { event_query_touch(pInfo); -#endif event_query_axis_ranges(pInfo); } event_query_model(pInfo->fd, &priv->model, &priv->id_vendor, diff -Nru xserver-xorg-input-synaptics-1.6.3/src/eventcomm.h xserver-xorg-input-synaptics-1.7.1/src/eventcomm.h --- xserver-xorg-input-synaptics-1.6.3/src/eventcomm.h 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/eventcomm.h 2013-05-13 00:03:25.000000000 +0000 @@ -41,7 +41,6 @@ extern struct eventcomm_proto_data *EventProtoDataAlloc(void); extern Bool - EventReadHwState(InputInfoPtr pInfo, struct CommData *comm, struct SynapticsHwState *hwRet); diff -Nru xserver-xorg-input-synaptics-1.6.3/src/properties.c xserver-xorg-input-synaptics-1.7.1/src/properties.c --- xserver-xorg-input-synaptics-1.6.3/src/properties.c 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/properties.c 2013-05-13 00:03:25.000000000 +0000 @@ -1,5 +1,5 @@ /* - * Copyright © 2008 Red Hat, Inc. + * Copyright © 2008-2012 Red Hat, Inc. * * Permission to use, copy, modify, distribute, and sell this software * and its documentation for any purpose is hereby granted without @@ -35,7 +35,6 @@ #include #include -#include "synaptics.h" #include "synapticsstr.h" #include "synaptics-properties.h" @@ -59,7 +58,6 @@ Atom prop_tap_move = 0; Atom prop_tap_durations = 0; Atom prop_clickpad = 0; -Atom prop_tap_fast = 0; Atom prop_middle_timeout = 0; Atom prop_twofinger_pressure = 0; Atom prop_twofinger_width = 0; @@ -70,9 +68,6 @@ Atom prop_edgemotion_pressure = 0; Atom prop_edgemotion_speed = 0; Atom prop_edgemotion_always = 0; -Atom prop_buttonscroll = 0; -Atom prop_buttonscroll_repeat = 0; -Atom prop_buttonscroll_time = 0; Atom prop_off = 0; Atom prop_lockdrags = 0; Atom prop_lockdrags_time = 0; @@ -205,7 +200,7 @@ values[0] = para->finger_low; values[1] = para->finger_high; - values[2] = para->finger_press; + values[2] = 0; prop_finger = InitAtom(pInfo->dev, SYNAPTICS_PROP_FINGER, 32, 3, values); prop_tap_time = @@ -221,8 +216,6 @@ InitAtom(pInfo->dev, SYNAPTICS_PROP_TAP_DURATIONS, 32, 3, values); prop_clickpad = InitAtom(pInfo->dev, SYNAPTICS_PROP_CLICKPAD, 8, 1, ¶->clickpad); - prop_tap_fast = - InitAtom(pInfo->dev, SYNAPTICS_PROP_TAP_FAST, 8, 1, ¶->fast_taps); prop_middle_timeout = InitAtom(pInfo->dev, SYNAPTICS_PROP_MIDDLE_TIMEOUT, 32, 1, ¶->emulate_mid_button_time); @@ -251,38 +244,9 @@ fvalues[0] = para->min_speed; fvalues[1] = para->max_speed; fvalues[2] = para->accl; - fvalues[3] = para->trackstick_speed; + fvalues[3] = 0; prop_speed = InitFloatAtom(pInfo->dev, SYNAPTICS_PROP_SPEED, 4, fvalues); - values[0] = para->edge_motion_min_z; - values[1] = para->edge_motion_max_z; - prop_edgemotion_pressure = - InitAtom(pInfo->dev, SYNAPTICS_PROP_EDGEMOTION_PRESSURE, 32, 2, values); - - values[0] = para->edge_motion_min_speed; - values[1] = para->edge_motion_max_speed; - prop_edgemotion_speed = - InitAtom(pInfo->dev, SYNAPTICS_PROP_EDGEMOTION_SPEED, 32, 2, values); - prop_edgemotion_always = - InitAtom(pInfo->dev, SYNAPTICS_PROP_EDGEMOTION, 8, 1, - ¶->edge_motion_use_always); - - if (priv->has_scrollbuttons) { - values[0] = para->updown_button_scrolling; - values[1] = para->leftright_button_scrolling; - prop_buttonscroll = - InitAtom(pInfo->dev, SYNAPTICS_PROP_BUTTONSCROLLING, 8, 2, values); - - values[0] = para->updown_button_repeat; - values[1] = para->leftright_button_repeat; - prop_buttonscroll_repeat = - InitAtom(pInfo->dev, SYNAPTICS_PROP_BUTTONSCROLLING_REPEAT, 8, 2, - values); - prop_buttonscroll_time = - InitAtom(pInfo->dev, SYNAPTICS_PROP_BUTTONSCROLLING_TIME, 32, 1, - ¶->scroll_button_repeat); - } - prop_off = InitAtom(pInfo->dev, SYNAPTICS_PROP_OFF, 8, 1, ¶->touchpad_off); prop_lockdrags = @@ -312,9 +276,6 @@ prop_circscroll_trigger = InitAtom(pInfo->dev, SYNAPTICS_PROP_CIRCULAR_SCROLLING_TRIGGER, 8, 1, ¶->circular_trigger); - prop_circpad = - InitAtom(pInfo->dev, SYNAPTICS_PROP_CIRCULAR_PAD, 8, 1, - ¶->circular_pad); prop_palm = InitAtom(pInfo->dev, SYNAPTICS_PROP_PALM_DETECT, 8, 1, ¶->palm_detect); @@ -443,8 +404,6 @@ para->finger_low = finger[0]; para->finger_high = finger[1]; - para->finger_press = finger[2]; - } else if (property == prop_tap_time) { if (prop->size != 1 || prop->format != 32 || prop->type != XA_INTEGER) @@ -487,13 +446,6 @@ para->clickpad = *(BOOL *) prop->data; } - else if (property == prop_tap_fast) { - if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER) - return BadMatch; - - para->fast_taps = *(BOOL *) prop->data; - - } else if (property == prop_middle_timeout) { if (prop->size != 1 || prop->format != 32 || prop->type != XA_INTEGER) return BadMatch; @@ -524,18 +476,14 @@ if (para->scroll_dist_vert != dist[0]) { para->scroll_dist_vert = dist[0]; -#ifdef HAVE_SMOOTH_SCROLL SetScrollValuator(dev, priv->scroll_axis_vert, SCROLL_TYPE_VERTICAL, para->scroll_dist_vert, 0); -#endif } if (para->scroll_dist_horiz != dist[1]) { para->scroll_dist_horiz = dist[1]; -#ifdef HAVE_SMOOTH_SCROLL SetScrollValuator(dev, priv->scroll_axis_horiz, SCROLL_TYPE_HORIZONTAL, para->scroll_dist_horiz, 0); -#endif } } else if (property == prop_scrolledge) { @@ -569,80 +517,6 @@ para->min_speed = speed[0]; para->max_speed = speed[1]; para->accl = speed[2]; - para->trackstick_speed = speed[3]; - - } - else if (property == prop_edgemotion_pressure) { - CARD32 *pressure; - - if (prop->size != 2 || prop->format != 32 || prop->type != XA_INTEGER) - return BadMatch; - - pressure = (CARD32 *) prop->data; - if (pressure[0] > pressure[1]) - return BadValue; - - para->edge_motion_min_z = pressure[0]; - para->edge_motion_max_z = pressure[1]; - - } - else if (property == prop_edgemotion_speed) { - CARD32 *speed; - - if (prop->size != 2 || prop->format != 32 || prop->type != XA_INTEGER) - return BadMatch; - - speed = (CARD32 *) prop->data; - if (speed[0] > speed[1]) - return BadValue; - - para->edge_motion_min_speed = speed[0]; - para->edge_motion_max_speed = speed[1]; - - } - else if (property == prop_edgemotion_always) { - if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER) - return BadMatch; - - para->edge_motion_use_always = *(BOOL *) prop->data; - - } - else if (property == prop_buttonscroll) { - BOOL *scroll; - - if (!priv->has_scrollbuttons) - return BadMatch; - - if (prop->size != 2 || prop->format != 8 || prop->type != XA_INTEGER) - return BadMatch; - - scroll = (BOOL *) prop->data; - para->updown_button_scrolling = scroll[0]; - para->leftright_button_scrolling = scroll[1]; - - } - else if (property == prop_buttonscroll_repeat) { - BOOL *repeat; - - if (!priv->has_scrollbuttons) - return BadMatch; - - if (prop->size != 2 || prop->format != 8 || prop->type != XA_INTEGER) - return BadMatch; - - repeat = (BOOL *) prop->data; - para->updown_button_repeat = repeat[0]; - para->leftright_button_repeat = repeat[1]; - } - else if (property == prop_buttonscroll_time) { - if (!priv->has_scrollbuttons) - return BadMatch; - - if (prop->size != 1 || prop->format != 32 || prop->type != XA_INTEGER) - return BadMatch; - - para->scroll_button_repeat = *(INT32 *) prop->data; - } else if (property == prop_off) { CARD8 off; @@ -736,12 +610,6 @@ para->circular_trigger = trigger; } - else if (property == prop_circpad) { - if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER) - return BadMatch; - - para->circular_pad = *(BOOL *) prop->data; - } else if (property == prop_palm) { if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER) return BadMatch; diff -Nru xserver-xorg-input-synaptics-1.6.3/src/ps2comm.c xserver-xorg-input-synaptics-1.7.1/src/ps2comm.c --- xserver-xorg-input-synaptics-1.6.3/src/ps2comm.c 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/ps2comm.c 2013-05-13 00:03:25.000000000 +0000 @@ -38,7 +38,6 @@ #include #include "synproto.h" -#include "synaptics.h" #include "synapticsstr.h" #include "ps2comm.h" #include @@ -77,9 +76,9 @@ #define PS2_RES_SAMPLE_RATE(r) ((r) & 0xff) #ifdef DEBUG -#define PS2DBG(x) (x) +#define PS2DBG(...) ErrorF(__VA_ARGS__) #else -#define PS2DBG(x) +#define PS2DBG(...) #endif /***************************************************************************** @@ -95,13 +94,13 @@ { if (xf86WaitForInput(fd, 50000) > 0) { if (xf86ReadSerial(fd, b, 1) != 1) { - PS2DBG(ErrorF("ps2_getbyte: No byte read\n")); + PS2DBG("ps2_getbyte: No byte read\n"); return FALSE; } - PS2DBG(ErrorF("ps2_getbyte: byte %02X read\n", *b)); + PS2DBG("ps2_getbyte: byte %02X read\n", *b); return TRUE; } - PS2DBG(ErrorF("ps2_getbyte: timeout xf86WaitForInput\n")); + PS2DBG("ps2_getbyte: timeout xf86WaitForInput\n"); return FALSE; } @@ -114,16 +113,16 @@ byte ack; if (xf86WriteSerial(fd, &b, 1) != 1) { - PS2DBG(ErrorF("ps2_putbyte: error xf86WriteSerial\n")); + PS2DBG("ps2_putbyte: error xf86WriteSerial\n"); return FALSE; } - PS2DBG(ErrorF("ps2_putbyte: byte %02X send\n", b)); + PS2DBG("ps2_putbyte: byte %02X send\n", b); /* wait for an ACK */ if (!ps2_getbyte(fd, &ack)) { return FALSE; } if (ack != PS2_ACK) { - PS2DBG(ErrorF("ps2_putbyte: wrong acknowledge 0x%02x\n", ack)); + PS2DBG("ps2_putbyte: wrong acknowledge 0x%02x\n", ack); return FALSE; } return TRUE; @@ -160,7 +159,7 @@ static Bool ps2_send_cmd(int fd, byte c) { - PS2DBG(ErrorF("send command: 0x%02X\n", c)); + PS2DBG("send command: 0x%02X\n", c); return (ps2_special_cmd(fd, c) && ps2_putbyte(fd, PS2_CMD_STATUS_REQUEST)); } @@ -174,7 +173,7 @@ static Bool ps2_synaptics_set_mode(int fd, byte mode) { - PS2DBG(ErrorF("set mode byte to: 0x%02X\n", mode)); + PS2DBG("set mode byte to: 0x%02X\n", mode); return (ps2_special_cmd(fd, mode) && ps2_putbyte(fd, PS2_CMD_SET_SAMPLE_RATE) && ps2_putbyte(fd, 0x14)); } @@ -188,24 +187,23 @@ byte r[2]; xf86FlushInput(fd); - PS2DBG(ErrorF("Reset the Touchpad...\n")); + PS2DBG("Reset the Touchpad...\n"); if (!ps2_putbyte(fd, PS2_CMD_RESET)) { - PS2DBG(ErrorF("...failed\n")); + PS2DBG("...failed\n"); return FALSE; } xf86WaitForInput(fd, 4000000); if (ps2_getbyte(fd, &r[0]) && ps2_getbyte(fd, &r[1])) { if (r[0] == 0xAA && r[1] == 0x00) { - PS2DBG(ErrorF("...done\n")); + PS2DBG("...done\n"); return TRUE; } else { - PS2DBG(ErrorF - ("...failed. Wrong reset ack 0x%02x, 0x%02x\n", r[0], r[1])); + PS2DBG("...failed. Wrong reset ack 0x%02x, 0x%02x\n", r[0], r[1]); return FALSE; } } - PS2DBG(ErrorF("...failed\n")); + PS2DBG("...failed\n"); return FALSE; } @@ -218,18 +216,18 @@ { byte mi[3]; - PS2DBG(ErrorF("Read mode id...\n")); + PS2DBG("Read mode id...\n"); synhw->model_id = 0; if (ps2_send_cmd(fd, SYN_QUE_MODEL) && ps2_getbyte(fd, &mi[0]) && ps2_getbyte(fd, &mi[1]) && ps2_getbyte(fd, &mi[2])) { synhw->model_id = (mi[0] << 16) | (mi[1] << 8) | mi[2]; - PS2DBG(ErrorF("model-id %06X\n", synhw->model_id)); - PS2DBG(ErrorF("...done.\n")); + PS2DBG("model-id %06X\n", synhw->model_id); + PS2DBG("...done.\n"); return TRUE; } - PS2DBG(ErrorF("...failed.\n")); + PS2DBG("...failed.\n"); return FALSE; } @@ -242,7 +240,7 @@ { byte cap[3]; - PS2DBG(ErrorF("Read capabilites...\n")); + PS2DBG("Read capabilites...\n"); synhw->capabilities = 0; synhw->ext_cap = 0; @@ -250,26 +248,25 @@ ps2_getbyte(fd, &cap[0]) && ps2_getbyte(fd, &cap[1]) && ps2_getbyte(fd, &cap[2])) { synhw->capabilities = (cap[0] << 16) | (cap[1] << 8) | cap[2]; - PS2DBG(ErrorF("capabilities %06X\n", synhw->capabilities)); + PS2DBG("capabilities %06X\n", synhw->capabilities); if (SYN_CAP_VALID(synhw)) { if (SYN_EXT_CAP_REQUESTS(synhw)) { if (ps2_send_cmd(fd, SYN_QUE_EXT_CAPAB) && ps2_getbyte(fd, &cap[0]) && ps2_getbyte(fd, &cap[1]) && ps2_getbyte(fd, &cap[2])) { synhw->ext_cap = (cap[0] << 16) | (cap[1] << 8) | cap[2]; - PS2DBG(ErrorF("ext-capability %06X\n", synhw->ext_cap)); + PS2DBG("ext-capability %06X\n", synhw->ext_cap); } else { - PS2DBG(ErrorF - ("synaptics says, that it has extended-capabilities, " - "but I cannot read them.")); + PS2DBG("synaptics says, that it has extended-capabilities, " + "but I cannot read them."); } } - PS2DBG(ErrorF("...done.\n")); + PS2DBG("...done.\n"); return TRUE; } } - PS2DBG(ErrorF("...failed.\n")); + PS2DBG("...failed.\n"); return FALSE; } @@ -282,20 +279,20 @@ { byte id[3]; - PS2DBG(ErrorF("Identify Touchpad...\n")); + PS2DBG("Identify Touchpad...\n"); synhw->identity = 0; if (ps2_send_cmd(fd, SYN_QUE_IDENTIFY) && ps2_getbyte(fd, &id[0]) && ps2_getbyte(fd, &id[1]) && ps2_getbyte(fd, &id[2])) { synhw->identity = (id[0] << 16) | (id[1] << 8) | id[2]; - PS2DBG(ErrorF("ident %06X\n", synhw->identity)); + PS2DBG("ident %06X\n", synhw->identity); if (SYN_ID_IS_SYNAPTICS(synhw)) { - PS2DBG(ErrorF("...done.\n")); + PS2DBG("...done.\n"); return TRUE; } } - PS2DBG(ErrorF("...failed.\n")); + PS2DBG("...failed.\n"); return FALSE; } @@ -436,22 +433,22 @@ int newabs = SYN_MODEL_NEWABS(synhw); if (newabs ? ((buf[0] & 0xC0) != 0x80) : ((buf[0] & 0xC0) != 0xC0)) { - DBG(4, "Synaptics driver lost sync at 1st byte\n"); + PS2DBG("Synaptics driver lost sync at 1st byte\n"); return FALSE; } if (!newabs && ((buf[1] & 0x60) != 0x00)) { - DBG(4, "Synaptics driver lost sync at 2nd byte\n"); + PS2DBG("Synaptics driver lost sync at 2nd byte\n"); return FALSE; } if ((newabs ? ((buf[3] & 0xC0) != 0xC0) : ((buf[3] & 0xC0) != 0x80))) { - DBG(4, "Synaptics driver lost sync at 4th byte\n"); + PS2DBG("Synaptics driver lost sync at 4th byte\n"); return FALSE; } if (!newabs && ((buf[4] & 0x60) != 0x00)) { - DBG(4, "Synaptics driver lost sync at 5th byte\n"); + PS2DBG("Synaptics driver lost sync at 5th byte\n"); return FALSE; } @@ -473,11 +470,11 @@ /* test if there is a reset sequence received */ if ((c == 0x00) && (comm->lastByte == 0xAA)) { if (xf86WaitForInput(pInfo->fd, 50000) == 0) { - DBG(7, "Reset received\n"); + PS2DBG("Reset received\n"); proto_ops->QueryHardware(pInfo); } else - DBG(3, "faked reset received\n"); + PS2DBG("faked reset received\n"); } comm->lastByte = u; @@ -502,8 +499,7 @@ comm->outOfSync++; if (comm->outOfSync > MAX_UNSYNC_PACKETS) { comm->outOfSync = 0; - DBG(3, - "Synaptics synchronization lost too long -> reset touchpad.\n"); + PS2DBG("Synaptics synchronization lost too long -> reset touchpad.\n"); proto_ops->QueryHardware(pInfo); /* including a reset */ continue; } @@ -513,7 +509,7 @@ if (comm->protoBufTail >= 6) { /* Full packet received */ if (comm->outOfSync > 0) { comm->outOfSync = 0; - DBG(4, "Synaptics driver resynced.\n"); + PS2DBG("Synaptics driver resynced.\n"); } comm->protoBufTail = 0; return TRUE; @@ -555,7 +551,7 @@ hw->multi[i] = FALSE; if (newabs) { /* newer protos... */ - DBG(7, "using new protocols\n"); + PS2DBG("using new protocols\n"); hw->x = (((buf[3] & 0x10) << 8) | ((buf[1] & 0x0f) << 8) | buf[4]); hw->y = (((buf[3] & 0x20) << 7) | ((buf[1] & 0xf0) << 4) | buf[5]); @@ -601,7 +597,7 @@ } } else { /* old proto... */ - DBG(7, "using old protocol\n"); + PS2DBG("using old protocol\n"); hw->x = (((buf[1] & 0x1F) << 8) | buf[2]); hw->y = (((buf[4] & 0x1F) << 8) | buf[5]); diff -Nru xserver-xorg-input-synaptics-1.6.3/src/psmcomm.c xserver-xorg-input-synaptics-1.7.1/src/psmcomm.c --- xserver-xorg-input-synaptics-1.6.3/src/psmcomm.c 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/psmcomm.c 2013-05-13 00:03:25.000000000 +0000 @@ -45,7 +45,6 @@ #include #include #include "synproto.h" -#include "synaptics.h" #include "synapticsstr.h" #include "ps2comm.h" /* ps2_print_ident() */ #include diff -Nru xserver-xorg-input-synaptics-1.6.3/src/synaptics.c xserver-xorg-input-synaptics-1.7.1/src/synaptics.c --- xserver-xorg-input-synaptics-1.6.3/src/synaptics.c 2013-02-01 05:35:16.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/synaptics.c 2013-05-13 00:03:25.000000000 +0000 @@ -13,7 +13,7 @@ * Copyright © 2006 Christian Thaeter * Copyright © 2007 Joseph P. Skudlarek * Copyright © 2008 Fedor P. Goncharov - * Copyright © 2008-2009 Red Hat, Inc. + * Copyright © 2008-2012 Red Hat, Inc. * Copyright © 2011 The Chromium OS Authors * * Permission to use, copy, modify, distribute, and sell this software @@ -63,7 +63,6 @@ #include #include #include -#include #include #include #include @@ -75,11 +74,10 @@ #include #include -#include "synaptics.h" #include "synapticsstr.h" #include "synaptics-properties.h" -typedef enum { +enum EdgeType { NO_EDGE = 0, BOTTOM_EDGE = 1, TOP_EDGE = 2, @@ -89,7 +87,7 @@ RIGHT_BOTTOM_EDGE = BOTTOM_EDGE | RIGHT_EDGE, RIGHT_TOP_EDGE = TOP_EDGE | RIGHT_EDGE, LEFT_TOP_EDGE = TOP_EDGE | LEFT_EDGE -} edge_type; +}; /* * We expect to be receiving a steady 80 packets/sec (which gives 40 @@ -116,21 +114,12 @@ #define M_PI 3.14159265358979323846 #endif -#ifndef M_SQRT1_2 -#define M_SQRT1_2 0.70710678118654752440 /* 1/sqrt(2) */ -#endif - #define INPUT_BUFFER_SIZE 200 /***************************************************************************** * Forward declaration ****************************************************************************/ -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12 static int SynapticsPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags); -#else -static InputInfoPtr SynapticsPreInit(InputDriverPtr drv, IDevPtr dev, - int flags); -#endif static void SynapticsUnInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags); static Bool DeviceControl(DeviceIntPtr, int); static void ReadInput(InputInfoPtr); @@ -138,10 +127,10 @@ Bool from_timer); static int ControlProc(InputInfoPtr, xDeviceCtl *); static int SwitchMode(ClientPtr, DeviceIntPtr, int); -static Bool DeviceInit(DeviceIntPtr); -static Bool DeviceOn(DeviceIntPtr); -static Bool DeviceOff(DeviceIntPtr); -static Bool DeviceClose(DeviceIntPtr); +static int DeviceInit(DeviceIntPtr); +static int DeviceOn(DeviceIntPtr); +static int DeviceOff(DeviceIntPtr); +static int DeviceClose(DeviceIntPtr); static Bool QueryHardware(InputInfoPtr); static void ReadDevDimensions(InputInfoPtr); static void ScaleCoordinates(SynapticsPrivate * priv, @@ -158,20 +147,16 @@ struct SynapticsProtocolOperations *proto_ops; } protocols[] = { #ifdef BUILD_EVENTCOMM - { - "event", &event_proto_operations}, + { "event", &event_proto_operations }, #endif #ifdef BUILD_PSMCOMM - { - "psm", &psm_proto_operations}, + { "psm", &psm_proto_operations }, #endif #ifdef BUILD_PS2COMM - { - "psaux", &psaux_proto_operations}, { - "alps", &alps_proto_operations}, + { "psaux", &psaux_proto_operations }, + { "alps", &alps_proto_operations }, #endif - { - NULL, NULL} + { NULL, NULL } }; InputDriverRec SYNAPTICS = { @@ -297,64 +282,6 @@ return (priv->proto_ops != NULL); } -/* - * Allocate and initialize read-only memory for the SynapticsParameters data to hold - * driver settings. - * The function will allocate shared memory if priv->shm_config is TRUE. - */ -static Bool -alloc_shm_data(InputInfoPtr pInfo) -{ - int shmid; - SynapticsPrivate *priv = pInfo->private; - - if (priv->synshm) - return TRUE; /* Already allocated */ - - if (priv->shm_config) { - if ((shmid = shmget(SHM_SYNAPTICS, 0, 0)) != -1) - shmctl(shmid, IPC_RMID, NULL); - if ((shmid = shmget(SHM_SYNAPTICS, sizeof(SynapticsSHM), - 0774 | IPC_CREAT)) == -1) { - xf86IDrvMsg(pInfo, X_ERROR, "error shmget\n"); - return FALSE; - } - if ((priv->synshm = (SynapticsSHM *) shmat(shmid, NULL, 0)) == NULL) { - xf86IDrvMsg(pInfo, X_ERROR, "error shmat\n"); - return FALSE; - } - } - else { - priv->synshm = calloc(1, sizeof(SynapticsSHM)); - if (!priv->synshm) - return FALSE; - } - - return TRUE; -} - -/* - * Free SynapticsParameters data previously allocated by alloc_shm_data(). - */ -static void -free_shm_data(SynapticsPrivate * priv) -{ - int shmid; - - if (!priv->synshm) - return; - - if (priv->shm_config) { - if ((shmid = shmget(SHM_SYNAPTICS, 0, 0)) != -1) - shmctl(shmid, IPC_RMID, NULL); - } - else { - free(priv->synshm); - } - - priv->synshm = NULL; -} - static void calculate_edge_widths(SynapticsPrivate * priv, int *l, int *r, int *t, int *b) { @@ -372,7 +299,8 @@ ewidth = width * .15; eheight = height * .15; } - else if (priv->model == MODEL_APPLETOUCH) { + else if (priv->model == MODEL_APPLETOUCH || + priv->model == MODEL_UNIBODY_MACBOOK) { ewidth = width * .085; eheight = height * .085; } @@ -389,22 +317,26 @@ static void calculate_tap_hysteresis(SynapticsPrivate * priv, int range, - int *fingerLow, int *fingerHigh, int *fingerPress) + int *fingerLow, int *fingerHigh) { - if (priv->model == MODEL_ELANTECH) { + switch (priv->model) { + case MODEL_ELANTECH: /* All Elantech touchpads don't need the Z filtering to get the * number of fingers correctly. See Documentation/elantech.txt * in the kernel. */ *fingerLow = priv->minp + 1; *fingerHigh = priv->minp + 1; - } - else { + break; + case MODEL_UNIBODY_MACBOOK: + *fingerLow = 70; + *fingerHigh = 75; + break; + default: *fingerLow = priv->minp + range * (25.0 / 256); *fingerHigh = priv->minp + range * (30.0 / 256); + break; } - - *fingerPress = priv->minp + range * 1.000; } /* Area options support both percent values and absolute values. This is @@ -418,16 +350,12 @@ const int range, const int offset, const int default_value) { int result; - -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 11 double percent = xf86CheckPercentOption(options, optname, -1); if (percent >= 0.0) { percent = xf86SetPercentOption(options, optname, -1); result = percent / 100.0 * range + offset; - } - else -#endif + } else result = xf86SetIntOption(options, optname, default_value); return result; @@ -439,54 +367,67 @@ Bool right_disabled = FALSE; Bool middle_disabled = FALSE; + enum { + /* right button left, right, top, bottom */ + RBL = 0, + RBR = 1, + RBT = 2, + RBB = 3, + /* middle button left, right, top, bottom */ + MBL = 4, + MBR = 5, + MBT = 6, + MBB = 7, + }; + /* Check right button area */ - if ((((values[0] != 0) && (values[1] != 0)) && (values[0] > values[1])) || - (((values[2] != 0) && (values[3] != 0)) && (values[2] > values[3]))) + if ((((values[RBL] != 0) && (values[RBR] != 0)) && (values[RBL] > values[RBR])) || + (((values[RBT] != 0) && (values[RBB] != 0)) && (values[RBT] > values[RBB]))) return FALSE; /* Check middle button area */ - if ((((values[4] != 0) && (values[5] != 0)) && (values[4] > values[5])) || - (((values[6] != 0) && (values[7] != 0)) && (values[6] > values[7]))) + if ((((values[MBL] != 0) && (values[MBR] != 0)) && (values[MBL] > values[MBR])) || + (((values[MBT] != 0) && (values[MBB] != 0)) && (values[MBT] > values[MBB]))) return FALSE; - if (values[0] == 0 && values[1] == 0 && values[2] == 0 && values[3] == 0) + if (values[RBL] == 0 && values[RBR] == 0 && values[RBT] == 0 && values[RBB] == 0) right_disabled = TRUE; - if (values[4] == 0 && values[5] == 0 && values[6] == 0 && values[7] == 0) + if (values[MBL] == 0 && values[MBR] == 0 && values[MBT] == 0 && values[MBB] == 0) middle_disabled = TRUE; if (!right_disabled && - ((values[0] && values[0] == values[1]) || - (values[2] && values[2] == values[3]))) + ((values[RBL] && values[RBL] == values[RBR]) || + (values[RBT] && values[RBT] == values[RBB]))) return FALSE; if (!middle_disabled && - ((values[4] && values[4] == values[5]) || - (values[6] && values[6] == values[7]))) + ((values[MBL] && values[MBL] == values[MBR]) || + (values[MBT] && values[MBT] == values[MBB]))) return FALSE; /* Check for overlapping button areas */ if (!right_disabled && !middle_disabled) { - int right_left = values[0] ? values[0] : INT_MIN; - int right_right = values[1] ? values[1] : INT_MAX; - int right_top = values[2] ? values[2] : INT_MIN; - int right_bottom = values[3] ? values[3] : INT_MAX; - int middle_left = values[4] ? values[4] : INT_MIN; - int middle_right = values[5] ? values[5] : INT_MAX; - int middle_top = values[6] ? values[6] : INT_MIN; - int middle_bottom = values[7] ? values[7] : INT_MAX; + int right_left = values[RBL] ? values[RBL] : INT_MIN; + int right_right = values[RBR] ? values[RBR] : INT_MAX; + int right_top = values[RBT] ? values[RBT] : INT_MIN; + int right_bottom = values[RBB] ? values[RBB] : INT_MAX; + int middle_left = values[MBL] ? values[MBL] : INT_MIN; + int middle_right = values[MBR] ? values[MBR] : INT_MAX; + int middle_top = values[MBT] ? values[MBT] : INT_MIN; + int middle_bottom = values[MBB] ? values[MBB] : INT_MAX; /* If areas overlap in the Y axis */ if ((right_bottom <= middle_bottom && right_bottom >= middle_top) || (right_top <= middle_bottom && right_top >= middle_top)) { /* Check for overlapping left edges */ - if ((right_left < middle_left && right_right >= middle_left) || - (middle_left < right_left && middle_right >= right_left)) + if ((right_left < middle_left && right_right > middle_left) || + (middle_left < right_left && middle_right > right_left)) return FALSE; /* Check for overlapping right edges */ - if ((right_right > middle_right && right_left <= middle_right) || - (middle_right > right_right && middle_left <= right_right)) + if ((right_right > middle_right && right_left < middle_right) || + (middle_right > right_right && middle_left < right_right)) return FALSE; } @@ -494,13 +435,13 @@ if ((right_left >= middle_left && right_left <= middle_right) || (right_right >= middle_left && right_right <= middle_right)) { /* Check for overlapping top edges */ - if ((right_top < middle_top && right_bottom >= middle_top) || - (middle_top < right_top && middle_bottom >= right_top)) + if ((right_top < middle_top && right_bottom > middle_top) || + (middle_top < right_top && middle_bottom > right_top)) return FALSE; /* Check for overlapping bottom edges */ - if ((right_bottom > middle_bottom && right_top <= middle_bottom) || - (middle_bottom > right_bottom && middle_top <= right_bottom)) + if ((right_bottom > middle_bottom && right_top < middle_bottom) || + (middle_bottom > right_bottom && middle_top < right_bottom)) return FALSE; } } @@ -572,12 +513,15 @@ memcpy(pars->softbutton_areas[0], values, 4 * sizeof(int)); memcpy(pars->softbutton_areas[1], values + 4, 4 * sizeof(int)); + free(option_string); + return; fail: xf86IDrvMsg(pInfo, X_ERROR, "invalid SoftButtonAreas value '%s', keeping defaults\n", option_string); + free(option_string); } static void @@ -590,12 +534,10 @@ int horizScrollDelta, vertScrollDelta; /* pixels */ int tapMove; /* pixels */ int l, r, t, b; /* left, right, top, bottom */ - int edgeMotionMinSpeed, edgeMotionMaxSpeed; /* pixels/second */ double accelFactor; /* 1/pixels */ - int fingerLow, fingerHigh, fingerPress; /* pressure */ + int fingerLow, fingerHigh; /* pressure */ int emulateTwoFingerMinZ; /* pressure */ int emulateTwoFingerMinW; /* width */ - int edgeMotionMinZ, edgeMotionMaxZ; /* pressure */ int pressureMotionMinZ, pressureMotionMaxZ; /* pressure */ int palmMinWidth, palmMinZ; /* pressure */ int tapButton1, tapButton2, tapButton3; @@ -608,12 +550,6 @@ int horizHyst, vertHyst; int middle_button_timeout; - /* read the parameters */ - if (priv->synshm) - priv->synshm->version = - (PACKAGE_VERSION_MAJOR * 10000 + PACKAGE_VERSION_MINOR * 100 + - PACKAGE_VERSION_PATCHLEVEL); - /* The synaptics specs specify typical edge widths of 4% on x, and 5.4% on * y (page 7) [Synaptics TouchPad Interfacing Guide, 510-000080 - A * Second Edition, http://www.synaptics.com/support/dev_support.cfm, 8 Sep @@ -635,8 +571,6 @@ horizScrollDelta = diag * .020; vertScrollDelta = diag * .020; tapMove = diag * .044; - edgeMotionMinSpeed = 1; - edgeMotionMaxSpeed = diag * .080; accelFactor = 200.0 / diag; /* trial-and-error */ /* hysteresis, assume >= 0 is a detected value (e.g. evdev fuzz) */ @@ -645,13 +579,10 @@ range = priv->maxp - priv->minp + 1; - calculate_tap_hysteresis(priv, range, &fingerLow, &fingerHigh, - &fingerPress); + calculate_tap_hysteresis(priv, range, &fingerLow, &fingerHigh); /* scaling based on defaults and a pressure of 256 */ emulateTwoFingerMinZ = priv->minp + range * (282.0 / 256); - edgeMotionMinZ = priv->minp + range * (30.0 / 256); - edgeMotionMaxZ = priv->minp + range * (160.0 / 256); pressureMotionMinZ = priv->minp + range * (30.0 / 256); pressureMotionMaxZ = priv->minp + range * (160.0 / 256); palmMinZ = priv->minp + range * (200.0 / 256); @@ -709,13 +640,11 @@ pars->finger_low = xf86SetIntOption(opts, "FingerLow", fingerLow); pars->finger_high = xf86SetIntOption(opts, "FingerHigh", fingerHigh); - pars->finger_press = xf86SetIntOption(opts, "FingerPress", fingerPress); pars->tap_time = xf86SetIntOption(opts, "MaxTapTime", 180); pars->tap_move = xf86SetIntOption(opts, "MaxTapMove", tapMove); pars->tap_time_2 = xf86SetIntOption(opts, "MaxDoubleTapTime", 180); pars->click_time = xf86SetIntOption(opts, "ClickTime", 100); pars->clickpad = xf86SetBoolOption(opts, "ClickPad", pars->clickpad); /* Probed */ - pars->fast_taps = xf86SetBoolOption(opts, "FastTaps", FALSE); /* middle mouse button emulation on a clickpad? nah, you're joking */ middle_button_timeout = pars->clickpad ? 0 : 75; pars->emulate_mid_button_time = @@ -737,29 +666,7 @@ xf86SetBoolOption(opts, "VertTwoFingerScroll", vertTwoFingerScroll); pars->scroll_twofinger_horiz = xf86SetBoolOption(opts, "HorizTwoFingerScroll", horizTwoFingerScroll); - pars->edge_motion_min_z = - xf86SetIntOption(opts, "EdgeMotionMinZ", edgeMotionMinZ); - pars->edge_motion_max_z = - xf86SetIntOption(opts, "EdgeMotionMaxZ", edgeMotionMaxZ); - pars->edge_motion_min_speed = - xf86SetIntOption(opts, "EdgeMotionMinSpeed", edgeMotionMinSpeed); - pars->edge_motion_max_speed = - xf86SetIntOption(opts, "EdgeMotionMaxSpeed", edgeMotionMaxSpeed); - pars->edge_motion_use_always = - xf86SetBoolOption(opts, "EdgeMotionUseAlways", FALSE); - if (priv->has_scrollbuttons) { - pars->updown_button_scrolling = - xf86SetBoolOption(opts, "UpDownScrolling", TRUE); - pars->leftright_button_scrolling = - xf86SetBoolOption(opts, "LeftRightScrolling", TRUE); - pars->updown_button_repeat = - xf86SetBoolOption(opts, "UpDownScrollRepeat", TRUE); - pars->leftright_button_repeat = - xf86SetBoolOption(opts, "LeftRightScrollRepeat", TRUE); - } - pars->scroll_button_repeat = - xf86SetIntOption(opts, "ScrollButtonRepeat", 100); - pars->touchpad_off = xf86SetIntOption(opts, "TouchpadOff", 0); + pars->touchpad_off = xf86SetIntOption(opts, "TouchpadOff", TOUCHPAD_ON); pars->locked_drags = xf86SetBoolOption(opts, "LockedDrags", FALSE); pars->locked_drag_time = xf86SetIntOption(opts, "LockedDragTimeout", 5000); pars->tap_action[RT_TAP] = xf86SetIntOption(opts, "RTCornerButton", 0); @@ -778,7 +685,6 @@ pars->circular_scrolling = xf86SetBoolOption(opts, "CircularScrolling", FALSE); pars->circular_trigger = xf86SetIntOption(opts, "CircScrollTrigger", 0); - pars->circular_pad = xf86SetBoolOption(opts, "CircularPad", FALSE); pars->palm_detect = xf86SetBoolOption(opts, "PalmDetect", FALSE); pars->palm_min_width = xf86SetIntOption(opts, "PalmMinWidth", palmMinWidth); pars->palm_min_z = xf86SetIntOption(opts, "PalmMinZ", palmMinZ); @@ -791,7 +697,6 @@ pars->min_speed = xf86SetRealOption(opts, "MinSpeed", 0.4); pars->max_speed = xf86SetRealOption(opts, "MaxSpeed", 0.7); pars->accl = xf86SetRealOption(opts, "AccelFactor", accelFactor); - pars->trackstick_speed = xf86SetRealOption(opts, "TrackstickSpeed", 40); pars->scroll_dist_circ = xf86SetRealOption(opts, "CircScrollDelta", 0.1); pars->coasting_speed = xf86SetRealOption(opts, "CoastingSpeed", 20.0); pars->coasting_friction = xf86SetRealOption(opts, "CoastingFriction", 50); @@ -820,21 +725,11 @@ set_softbutton_areas_option(pInfo); } -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 14 static double SynapticsAccelerationProfile(DeviceIntPtr dev, DeviceVelocityPtr vel, double velocity, double thr, double acc) { -#else -static float -SynapticsAccelerationProfile(DeviceIntPtr dev, - DeviceVelocityPtr vel, - float velocity_f, float thr_f, float acc_f) -{ - double velocity = velocity_f; - double acc = acc_f; -#endif InputInfoPtr pInfo = dev->public.devicePrivate; SynapticsPrivate *priv = (SynapticsPrivate *) (pInfo->private); SynapticsParameters *para = &priv->synpara; @@ -879,49 +774,8 @@ return accelfct; } -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12 -static int - NewSynapticsPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags); - -/* - * called by the module loader for initialization - */ -static InputInfoPtr -SynapticsPreInit(InputDriverPtr drv, IDevPtr dev, int flags) -{ - InputInfoPtr pInfo; - - /* Allocate a new InputInfoRec and add it to the head xf86InputDevs. */ - pInfo = xf86AllocateInput(drv, 0); - if (!pInfo) { - return NULL; - } - - /* initialize the InputInfoRec */ - pInfo->name = dev->identifier; - pInfo->reverse_conversion_proc = NULL; - pInfo->dev = NULL; - pInfo->private_flags = 0; - pInfo->flags = XI86_SEND_DRAG_EVENTS; - pInfo->conf_idev = dev; - pInfo->always_core_feedback = 0; - - xf86CollectInputOptions(pInfo, NULL, NULL); - - if (NewSynapticsPreInit(drv, pInfo, flags) != Success) - return NULL; - - pInfo->flags |= XI86_CONFIGURED; - - return pInfo; -} - -static int -NewSynapticsPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags) -#else static int SynapticsPreInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags) -#endif { SynapticsPrivate *priv; @@ -962,8 +816,6 @@ xf86ErrorFVerb(6, "port opened successfully\n"); /* initialize variables */ - priv->repeatButtons = 0; - priv->nextRepeat = 0; priv->count_packet_finger = 0; priv->tap_state = TS_START; priv->tap_button = 0; @@ -975,16 +827,10 @@ /* read hardware dimensions */ ReadDevDimensions(pInfo); - /* install shared memory or normal memory for parameters */ - priv->shm_config = xf86SetBoolOption(pInfo->options, "SHMConfig", FALSE); - set_default_parameters(pInfo); CalculateScalingCoeffs(priv); - if (!alloc_shm_data(pInfo)) - goto SetupProc_fail; - priv->comm.buffer = XisbNew(pInfo->fd, INPUT_BUFFER_SIZE); if (!QueryHardware(pInfo)) { @@ -1014,7 +860,6 @@ if (priv->comm.buffer) XisbFree(priv->comm.buffer); - free_shm_data(priv); free(priv->proto_data); free(priv->timer); free(priv); @@ -1034,14 +879,10 @@ free(priv->timer); if (priv && priv->proto_data) free(priv->proto_data); -#ifdef HAVE_SMOOTH_SCROLL if (priv && priv->scroll_events_mask) valuator_mask_free(&priv->scroll_events_mask); -#endif -#ifdef HAVE_MULTITOUCH if (priv && priv->open_slots) free(priv->open_slots); -#endif free(pInfo->private); pInfo->private = NULL; xf86DeleteInput(pInfo, 0); @@ -1056,7 +897,7 @@ { } -static Bool +static int DeviceControl(DeviceIntPtr dev, int mode) { Bool RetValue; @@ -1081,7 +922,7 @@ return RetValue; } -static Bool +static int DeviceOn(DeviceIntPtr dev) { InputInfoPtr pInfo = dev->public.devicePrivate; @@ -1149,17 +990,14 @@ priv->circ_scroll_on = FALSE; priv->circ_scroll_vert = FALSE; priv->mid_emu_state = MBE_OFF; - priv->nextRepeat = 0; priv->lastButtons = 0; priv->prev_z = 0; priv->prevFingers = 0; -#ifdef HAVE_MULTITOUCH priv->num_active_touches = 0; memset(priv->open_slots, 0, priv->num_slots * sizeof(int)); -#endif } -static Bool +static int DeviceOff(DeviceIntPtr dev) { InputInfoPtr pInfo = dev->public.devicePrivate; @@ -1187,7 +1025,7 @@ return rc; } -static Bool +static int DeviceClose(DeviceIntPtr dev) { Bool RetValue; @@ -1197,7 +1035,8 @@ RetValue = DeviceOff(dev); TimerFree(priv->timer); priv->timer = NULL; - free_shm_data(priv); + free(priv->touch_axes); + priv->touch_axes = NULL; SynapticsHwStateFree(&priv->hwState); SynapticsHwStateFree(&priv->old_hw_state); SynapticsHwStateFree(&priv->local_hw_state); @@ -1208,19 +1047,15 @@ static void InitAxesLabels(Atom *labels, int nlabels, const SynapticsPrivate * priv) { -#ifdef HAVE_MULTITOUCH int i; -#endif memset(labels, 0, nlabels * sizeof(Atom)); switch (nlabels) { default: -#ifdef HAVE_SMOOTH_SCROLL case 4: labels[3] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_VSCROLL); case 3: labels[2] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_HSCROLL); -#endif case 2: labels[1] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_Y); case 1: @@ -1228,14 +1063,12 @@ break; } -#ifdef HAVE_MULTITOUCH for (i = 0; i < priv->num_mt_axes; i++) { SynapticsTouchAxisRec *axis = &priv->touch_axes[i]; int axnum = nlabels - priv->num_mt_axes + i; labels[axnum] = XIGetKnownProperty(axis->label); } -#endif } static void @@ -1265,7 +1098,6 @@ static void DeviceInitTouch(DeviceIntPtr dev, Atom *axes_labels) { -#ifdef HAVE_MULTITOUCH InputInfoPtr pInfo = dev->public.devicePrivate; SynapticsPrivate *priv = (SynapticsPrivate *) (pInfo->private); int i; @@ -1312,10 +1144,9 @@ xf86InitValuatorDefaults(dev, axnum); } } -#endif } -static Bool +static int DeviceInit(DeviceIntPtr dev) { InputInfoPtr pInfo = dev->public.devicePrivate; @@ -1330,13 +1161,9 @@ Atom *axes_labels; DeviceVelocityPtr pVel; -#ifdef HAVE_SMOOTH_SCROLL num_axes += 2; -#endif -#ifdef HAVE_MULTITOUCH num_axes += priv->num_mt_axes; -#endif axes_labels = calloc(num_axes, sizeof(Atom)); if (!axes_labels) { @@ -1391,9 +1218,9 @@ * 100 packet/s by default. */ pVel->corr_mul = 12.5f; /*1000[ms]/80[/s] = 12.5 */ - xf86IDrvMsg(pInfo, X_CONFIG, "MaxSpeed is now %.2f\n", + xf86IDrvMsg(pInfo, X_CONFIG, "(accel) MaxSpeed is now %.2f\n", priv->synpara.max_speed); - xf86IDrvMsg(pInfo, X_CONFIG, "AccelFactor is now %.3f\n", + xf86IDrvMsg(pInfo, X_CONFIG, "(accel) AccelFactor is now %.3f\n", priv->synpara.accl); prop = XIGetKnownProperty(ACCEL_PROP_PROFILE_NUMBER); @@ -1412,12 +1239,9 @@ max = -1; } - xf86InitValuatorAxisStruct(dev, 0, axes_labels[0], - min, max, priv->resx * 1000, 0, priv->resx * 1000 -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12 - , Relative -#endif - ); + xf86InitValuatorAxisStruct(dev, 0, axes_labels[0], min, max, + priv->resx * 1000, 0, priv->resx * 1000, + Relative); xf86InitValuatorDefaults(dev, 0); /* Y valuator */ @@ -1430,15 +1254,11 @@ max = -1; } - xf86InitValuatorAxisStruct(dev, 1, axes_labels[1], - min, max, priv->resy * 1000, 0, priv->resy * 1000 -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12 - , Relative -#endif - ); + xf86InitValuatorAxisStruct(dev, 1, axes_labels[1], min, max, + priv->resy * 1000, 0, priv->resy * 1000, + Relative); xf86InitValuatorDefaults(dev, 1); -#ifdef HAVE_SMOOTH_SCROLL xf86InitValuatorAxisStruct(dev, 2, axes_labels[2], 0, -1, 0, 0, 0, Relative); priv->scroll_axis_horiz = 2; @@ -1455,7 +1275,6 @@ priv->synpara.scroll_dist_horiz, 0); SetScrollValuator(dev, priv->scroll_axis_vert, SCROLL_TYPE_VERTICAL, priv->synpara.scroll_dist_vert, 0); -#endif DeviceInitTouch(dev, axes_labels); @@ -1475,50 +1294,18 @@ priv->comm.hwState = SynapticsHwStateAlloc(priv); - if (!alloc_shm_data(pInfo)) - goto fail; - InitDeviceProperties(pInfo); XIRegisterPropertyHandler(pInfo->dev, SetProperty, NULL, NULL); return Success; fail: - free_shm_data(priv); free(priv->local_hw_state); free(priv->hwState); -#ifdef HAVE_MULTITOUCH free(priv->open_slots); -#endif return !Success; } -/* - * Convert from absolute X/Y coordinates to a coordinate system where - * -1 corresponds to the left/upper edge and +1 corresponds to the - * right/lower edge. - */ -static void -relative_coords(SynapticsPrivate * priv, int x, int y, - double *relX, double *relY) -{ - int minX = priv->synpara.left_edge; - int maxX = priv->synpara.right_edge; - int minY = priv->synpara.top_edge; - int maxY = priv->synpara.bottom_edge; - double xCenter = (minX + maxX) / 2.0; - double yCenter = (minY + maxY) / 2.0; - - if ((maxX - xCenter > 0) && (maxY - yCenter > 0)) { - *relX = (x - xCenter) / (maxX - xCenter); - *relY = (y - yCenter) / (maxY - yCenter); - } - else { - *relX = 0; - *relY = 0; - } -} - /* return angle of point relative to center */ static double angle(SynapticsPrivate * priv, int x, int y) @@ -1542,38 +1329,10 @@ return da; } -static edge_type -circular_edge_detection(SynapticsPrivate * priv, int x, int y) -{ - edge_type edge = 0; - double relX, relY, relR; - - relative_coords(priv, x, y, &relX, &relY); - relR = SQR(relX) + SQR(relY); - - if (relR > 1) { - /* we are outside the ellipse enclosed by the edge parameters */ - if (relX > M_SQRT1_2) - edge |= RIGHT_EDGE; - else if (relX < -M_SQRT1_2) - edge |= LEFT_EDGE; - - if (relY < -M_SQRT1_2) - edge |= TOP_EDGE; - else if (relY > M_SQRT1_2) - edge |= BOTTOM_EDGE; - } - - return edge; -} - -static edge_type +static enum EdgeType edge_detection(SynapticsPrivate * priv, int x, int y) { - edge_type edge = NO_EDGE; - - if (priv->synpara.circular_pad) - return circular_edge_detection(priv, x, y); + enum EdgeType edge = NO_EDGE; if (x > priv->synpara.right_edge) edge |= RIGHT_EDGE; @@ -1619,23 +1378,30 @@ { Bool inside_area = TRUE; - if (para->softbutton_areas[which][0] == 0 && - para->softbutton_areas[which][1] == 0 && - para->softbutton_areas[which][2] == 0 && - para->softbutton_areas[which][3] == 0) + enum { + LEFT = 0, + RIGHT = 1, + TOP = 2, + BOTTOM = 3 + }; + + if (para->softbutton_areas[which][LEFT] == 0 && + para->softbutton_areas[which][RIGHT] == 0 && + para->softbutton_areas[which][TOP] == 0 && + para->softbutton_areas[which][BOTTOM] == 0) return FALSE; - if (para->softbutton_areas[which][0] && - x < para->softbutton_areas[which][0]) + if (para->softbutton_areas[which][LEFT] && + x < para->softbutton_areas[which][LEFT]) inside_area = FALSE; - else if (para->softbutton_areas[which][1] && - x > para->softbutton_areas[which][1]) + else if (para->softbutton_areas[which][RIGHT] && + x > para->softbutton_areas[which][RIGHT]) inside_area = FALSE; - else if (para->softbutton_areas[which][2] && - y < para->softbutton_areas[which][2]) + else if (para->softbutton_areas[which][TOP] && + y < para->softbutton_areas[which][TOP]) inside_area = FALSE; - else if (para->softbutton_areas[which][3] && - y > para->softbutton_areas[which][3]) + else if (para->softbutton_areas[which][BOTTOM] && + y > para->softbutton_areas[which][BOTTOM]) inside_area = FALSE; return inside_area; @@ -1845,9 +1611,7 @@ if (priv->finger_state == FS_BLOCKED) return FS_BLOCKED; - if (hw->z > para->finger_press && priv->finger_state < FS_PRESSED) - finger = FS_PRESSED; - else if (hw->z > para->finger_high && priv->finger_state == FS_UNTOUCHED) + if (hw->z > para->finger_high && priv->finger_state == FS_UNTOUCHED) finger = FS_TOUCHED; else finger = priv->finger_state; @@ -1886,11 +1650,11 @@ } static void -SelectTapButton(SynapticsPrivate * priv, edge_type edge) +SelectTapButton(SynapticsPrivate * priv, enum EdgeType edge) { - TapEvent tap; + enum TapEvent tap; - if (priv->synpara.touchpad_off == 2) { + if (priv->synpara.touchpad_off == TOUCHPAD_TAP_OFF) { priv->tap_button = 0; return; } @@ -1940,8 +1704,6 @@ static void SetTapState(SynapticsPrivate * priv, enum TapState tap_state, CARD32 millis) { - SynapticsParameters *para = &priv->synpara; - DBG(3, "SetTapState - %d -> %d (millis:%u)\n", priv->tap_state, tap_state, millis); switch (tap_state) { @@ -1953,10 +1715,7 @@ priv->tap_button_state = TBS_BUTTON_UP; break; case TS_2A: - if (para->fast_taps) - priv->tap_button_state = TBS_BUTTON_DOWN; - else - priv->tap_button_state = TBS_BUTTON_UP; + priv->tap_button_state = TBS_BUTTON_UP; break; case TS_2B: priv->tap_button_state = TBS_BUTTON_UP; @@ -1965,10 +1724,7 @@ priv->tap_button_state = TBS_BUTTON_DOWN; break; case TS_SINGLETAP: - if (para->fast_taps) - priv->tap_button_state = TBS_BUTTON_UP; - else - priv->tap_button_state = TBS_BUTTON_DOWN; + priv->tap_button_state = TBS_BUTTON_DOWN; priv->touch_on.millis = millis; break; default: @@ -1985,10 +1741,6 @@ priv->moving_state, moving_state, priv->hwState->x, priv->hwState->y, millis); - if (moving_state == MS_TRACKSTICK) { - priv->trackstick_neutral_x = priv->hwState->x; - priv->trackstick_neutral_y = priv->hwState->y; - } priv->moving_state = moving_state; } @@ -2023,7 +1775,7 @@ SynapticsParameters *para = &priv->synpara; Bool touch, release, is_timeout, move, press; int timeleft, timeout; - edge_type edge; + enum EdgeType edge; int delay = 1000000000; if (priv->finger_state == FS_BLOCKED) @@ -2074,9 +1826,6 @@ if (finger == FS_TOUCHED) { SetMovingState(priv, MS_TOUCHPAD_RELATIVE, now); } - else if (finger == FS_PRESSED) { - SetMovingState(priv, MS_TRACKSTICK, now); - } SetTapState(priv, TS_MOVE, now); goto restart; } @@ -2095,9 +1844,6 @@ SetTapState(priv, TS_CLICKPAD_MOVE, now); goto restart; } - if (move && priv->moving_state == MS_TRACKSTICK) { - SetMovingState(priv, MS_TOUCHPAD_RELATIVE, now); - } if (release) { SetMovingState(priv, MS_FALSE, now); SetTapState(priv, TS_START, now); @@ -2140,9 +1886,6 @@ if (finger == FS_TOUCHED) { SetMovingState(priv, MS_TOUCHPAD_RELATIVE, now); } - else if (finger == FS_PRESSED) { - SetMovingState(priv, MS_TRACKSTICK, now); - } SetTapState(priv, TS_DRAG, now); } else { @@ -2269,72 +2012,9 @@ } static void -get_delta_for_trackstick(SynapticsPrivate * priv, - const struct SynapticsHwState *hw, double *dx, - double *dy) +get_delta(SynapticsPrivate *priv, const struct SynapticsHwState *hw, + enum EdgeType edge, double *dx, double *dy) { - SynapticsParameters *para = &priv->synpara; - double dtime = (hw->millis - HIST(0).millis) / 1000.0; - - *dx = (hw->x - priv->trackstick_neutral_x); - *dy = (hw->y - priv->trackstick_neutral_y); - - *dx = *dx * dtime * para->trackstick_speed; - *dy = *dy * dtime * para->trackstick_speed; -} - -static void -get_edge_speed(SynapticsPrivate * priv, const struct SynapticsHwState *hw, - edge_type edge, int *x_edge_speed, int *y_edge_speed) -{ - SynapticsParameters *para = &priv->synpara; - - int minZ = para->edge_motion_min_z; - int maxZ = para->edge_motion_max_z; - int minSpd = para->edge_motion_min_speed; - int maxSpd = para->edge_motion_max_speed; - int edge_speed; - - if (hw->z <= minZ) { - edge_speed = minSpd; - } - else if (hw->z >= maxZ) { - edge_speed = maxSpd; - } - else { - edge_speed = - minSpd + (hw->z - minZ) * (maxSpd - minSpd) / (maxZ - minZ); - } - if (!priv->synpara.circular_pad) { - /* on rectangular pad */ - if (edge & RIGHT_EDGE) { - *x_edge_speed = edge_speed; - } - else if (edge & LEFT_EDGE) { - *x_edge_speed = -edge_speed; - } - if (edge & TOP_EDGE) { - *y_edge_speed = -edge_speed; - } - else if (edge & BOTTOM_EDGE) { - *y_edge_speed = edge_speed; - } - } - else if (edge) { - /* at edge of circular pad */ - double relX, relY; - - relative_coords(priv, hw->x, hw->y, &relX, &relY); - *x_edge_speed = (int) (edge_speed * relX); - *y_edge_speed = (int) (edge_speed * relY); - } -} - -static void -get_delta(SynapticsPrivate * priv, const struct SynapticsHwState *hw, - edge_type edge, double *dx, double *dy) -{ - SynapticsParameters *para = &priv->synpara; double dtime = (hw->millis - HIST(0).millis) / 1000.0; double integral; double tmpf; @@ -2344,9 +2024,6 @@ *dx = hw->x - HIST(0).x; *dy = hw->y - HIST(0).y; - if ((priv->tap_state == TS_DRAG) || para->edge_motion_use_always) - get_edge_speed(priv, hw, edge, &x_edge_speed, &y_edge_speed); - /* report edge speed as synthetic motion. Of course, it would be * cooler to report floats than to buffer, but anyway. */ @@ -2366,11 +2043,11 @@ } /** - * Compute relative motion ('deltas') including edge motion xor trackstick. + * Compute relative motion ('deltas') including edge motion. */ static int ComputeDeltas(SynapticsPrivate * priv, const struct SynapticsHwState *hw, - edge_type edge, int *dxP, int *dyP, Bool inside_area) + enum EdgeType edge, int *dxP, int *dyP, Bool inside_area) { enum MovingState moving_state; double dx, dy; @@ -2413,9 +2090,7 @@ if (priv->count_packet_finger <= 1) goto out; /* skip the lot */ - if (priv->moving_state == MS_TRACKSTICK) - get_delta_for_trackstick(priv, hw, &dx, &dy); - else if (moving_state == MS_TOUCHPAD_RELATIVE) + if (moving_state == MS_TOUCHPAD_RELATIVE) get_delta(priv, hw, edge, &dx, &dy); out: @@ -2516,12 +2191,12 @@ static int HandleScrolling(SynapticsPrivate * priv, struct SynapticsHwState *hw, - edge_type edge, Bool finger) + enum EdgeType edge, Bool finger) { SynapticsParameters *para = &priv->synpara; int delay = 1000000000; - if ((priv->synpara.touchpad_off == 2) || (priv->finger_state == FS_BLOCKED)) { + if ((priv->synpara.touchpad_off == TOUCHPAD_TAP_OFF) || (priv->finger_state == FS_BLOCKED)) { stop_coasting(priv); priv->circ_scroll_on = FALSE; priv->vert_scroll_edge_on = FALSE; @@ -2783,12 +2458,11 @@ struct SynapticsHwState *hw) { int nfingers = 0; - -#if HAVE_MULTITOUCH - char close_point[SYNAPTICS_MAX_TOUCHES] = { 0 }; /* 1 for each point close - to another one */ + uint32_t close_point = 0; /* 1 bit for each point close to another one */ int i, j; + BUG_RETURN_VAL(hw->num_mt_mask > sizeof(close_point) * 8, 0); + for (i = 0; i < hw->num_mt_mask - 1; i++) { ValuatorMask *f1; @@ -2820,15 +2494,16 @@ * size. Good luck. */ if (abs(x1 - x2) < (priv->maxx - priv->minx) * .3 && abs(y1 - y2) < (priv->maxy - priv->miny) * .3) { - close_point[j] = 1; - close_point[i] = 1; + close_point |= (1 << j); + close_point |= (1 << i); } } } - for (i = 0; i < SYNAPTICS_MAX_TOUCHES; i++) - nfingers += close_point[i]; -#endif + while (close_point > 0) { + nfingers += close_point & 0x1; + close_point >>= 1; + } return nfingers; } @@ -2875,73 +2550,6 @@ } } -/* Update the hardware state in shared memory. This is read-only these days, - * nothing in the driver reads back from SHM. SHM configuration is a thing of the past. - */ -static void -update_shm(const InputInfoPtr pInfo, const struct SynapticsHwState *hw) -{ - int i; - SynapticsPrivate *priv = (SynapticsPrivate *) (pInfo->private); - SynapticsSHM *shm = priv->synshm; - - if (!shm) - return; - - shm->x = hw->x; - shm->y = hw->y; - shm->z = hw->z; - shm->numFingers = hw->numFingers; - shm->fingerWidth = hw->fingerWidth; - shm->left = hw->left; - shm->right = hw->right; - shm->up = hw->up; - shm->down = hw->down; - for (i = 0; i < 8; i++) - shm->multi[i] = hw->multi[i]; - shm->middle = hw->middle; -} - -/* Adjust the hardware state according to the extra buttons (if the touchpad - * has any and not many touchpads do these days). These buttons are up/down - * tilt buttons and/or left/right buttons that then map into a specific - * function (or scrolling into). - */ -static Bool -adjust_state_from_scrollbuttons(const InputInfoPtr pInfo, - struct SynapticsHwState *hw) -{ - SynapticsPrivate *priv = (SynapticsPrivate *) (pInfo->private); - SynapticsParameters *para = &priv->synpara; - Bool double_click = FALSE; - - if (!para->updown_button_scrolling) { - if (hw->down) { /* map down button to middle button */ - hw->middle = TRUE; - } - - if (hw->up) { /* up button generates double click */ - if (!priv->prev_up) - double_click = TRUE; - } - priv->prev_up = hw->up; - - /* reset up/down button events */ - hw->up = hw->down = FALSE; - } - - /* Left/right button scrolling, or middle clicks */ - if (!para->leftright_button_scrolling) { - if (hw->multi[2] || hw->multi[3]) - hw->middle = TRUE; - - /* reset left/right button events */ - hw->multi[2] = hw->multi[3] = FALSE; - } - - return double_click; -} - static void update_hw_button_state(const InputInfoPtr pInfo, struct SynapticsHwState *hw, struct SynapticsHwState *old, CARD32 now, int *delay) @@ -3005,7 +2613,6 @@ { SynapticsPrivate *priv = (SynapticsPrivate *) (pInfo->private); -#ifdef HAVE_SMOOTH_SCROLL valuator_mask_zero(priv->scroll_events_mask); if (priv->scroll.delta_y != 0.0) { @@ -3020,98 +2627,12 @@ } if (valuator_mask_num_valuators(priv->scroll_events_mask)) xf86PostMotionEventM(pInfo->dev, FALSE, priv->scroll_events_mask); -#else - SynapticsParameters *para = &priv->synpara; - - /* smooth scrolling uses the dist as increment */ - - while (priv->scroll.delta_y <= -para->scroll_dist_vert) { - post_button_click(pInfo, 4); - priv->scroll.delta_y += para->scroll_dist_vert; - } - - while (priv->scroll.delta_y >= para->scroll_dist_vert) { - post_button_click(pInfo, 5); - priv->scroll.delta_y -= para->scroll_dist_vert; - } - - while (priv->scroll.delta_x <= -para->scroll_dist_horiz) { - post_button_click(pInfo, 6); - priv->scroll.delta_x += para->scroll_dist_horiz; - } - - while (priv->scroll.delta_x >= para->scroll_dist_horiz) { - post_button_click(pInfo, 7); - priv->scroll.delta_x -= para->scroll_dist_horiz; - } -#endif -} - -static inline int -repeat_scrollbuttons(const InputInfoPtr pInfo, - const struct SynapticsHwState *hw, - int buttons, CARD32 now, int delay) -{ - SynapticsPrivate *priv = (SynapticsPrivate *) (pInfo->private); - SynapticsParameters *para = &priv->synpara; - int repeat_delay, timeleft; - int rep_buttons = 0; - - if (para->updown_button_repeat) - rep_buttons |= (1 << (4 - 1)) | (1 << (5 - 1)); - if (para->leftright_button_repeat) - rep_buttons |= (1 << (6 - 1)) | (1 << (7 - 1)); - - /* Handle auto repeat buttons */ - repeat_delay = clamp(para->scroll_button_repeat, SBR_MIN, SBR_MAX); - if (((hw->up || hw->down) && para->updown_button_repeat && - para->updown_button_scrolling) || - ((hw->multi[2] || hw->multi[3]) && para->leftright_button_repeat && - para->leftright_button_scrolling)) { - priv->repeatButtons = buttons & rep_buttons; - if (!priv->nextRepeat) { - priv->nextRepeat = now + repeat_delay * 2; - } - } - else { - priv->repeatButtons = 0; - priv->nextRepeat = 0; - } - - if (priv->repeatButtons) { - timeleft = TIME_DIFF(priv->nextRepeat, now); - if (timeleft > 0) - delay = MIN(delay, timeleft); - if (timeleft <= 0) { - int change, id; - - change = priv->repeatButtons; - while (change) { - id = ffs(change); - change &= ~(1 << (id - 1)); - if (id == 4) - priv->scroll.delta_y -= para->scroll_dist_vert; - else if (id == 5) - priv->scroll.delta_y += para->scroll_dist_vert; - else if (id == 6) - priv->scroll.delta_x -= para->scroll_dist_horiz; - else if (id == 7) - priv->scroll.delta_x += para->scroll_dist_horiz; - } - - priv->nextRepeat = now + repeat_delay; - delay = MIN(delay, repeat_delay); - } - } - - return delay; } /* Update the open slots and number of active touches */ static void UpdateTouchState(InputInfoPtr pInfo, struct SynapticsHwState *hw) { -#ifdef HAVE_MULTITOUCH SynapticsPrivate *priv = (SynapticsPrivate *) pInfo->private; int i; @@ -3140,13 +2661,11 @@ } SynapticsResetTouchHwState(hw, FALSE); -#endif } static void HandleTouches(InputInfoPtr pInfo, struct SynapticsHwState *hw) { -#ifdef HAVE_MULTITOUCH SynapticsPrivate *priv = (SynapticsPrivate *) pInfo->private; SynapticsParameters *para = &priv->synpara; int new_active_touches = priv->num_active_touches; @@ -3223,7 +2742,6 @@ out: UpdateTouchState(pInfo, hw); -#endif } static void @@ -3265,17 +2783,15 @@ SynapticsParameters *para = &priv->synpara; enum FingerState finger = FS_UNTOUCHED; int dx = 0, dy = 0, buttons, id; - edge_type edge = NO_EDGE; + enum EdgeType edge = NO_EDGE; int change; int double_click = FALSE; int delay = 1000000000; int timeleft; Bool inside_active_area; - update_shm(pInfo, hw); - /* If touchpad is switched off, we skip the whole thing and return delay */ - if (para->touchpad_off == 1) { + if (para->touchpad_off == TOUCHPAD_OFF) { UpdateTouchState(pInfo, hw); return delay; } @@ -3321,9 +2837,6 @@ * really release, the finger should remain down. */ } - if (priv->has_scrollbuttons) - double_click = adjust_state_from_scrollbuttons(pInfo, hw); - /* no edge or finger detection outside of area */ if (inside_active_area) { edge = edge_detection(priv, hw->x, hw->y); @@ -3355,10 +2868,8 @@ dx = dy = 0; - if (!priv->absolute_events) { - timeleft = ComputeDeltas(priv, hw, edge, &dx, &dy, inside_active_area); - delay = MIN(delay, timeleft); - } + timeleft = ComputeDeltas(priv, hw, edge, &dx, &dy, inside_active_area); + delay = MIN(delay, timeleft); buttons = ((hw->left ? 0x01 : 0) | (hw->middle ? 0x02 : 0) | @@ -3383,14 +2894,8 @@ } /* Post events */ - if (finger >= FS_TOUCHED) { - if (priv->absolute_events && inside_active_area) { - xf86PostMotionEvent(pInfo->dev, 1, 0, 2, hw->x, hw->y); - } - else if (dx || dy) { - xf86PostMotionEvent(pInfo->dev, 0, 0, 2, dx, dy); - } - } + if (finger >= FS_TOUCHED && (dx || dy)) + xf86PostMotionEvent(pInfo->dev, 0, 0, 2, dx, dy); if (priv->mid_emu_state == MBE_LEFT_CLICK) { post_button_click(pInfo, 1); @@ -3409,9 +2914,6 @@ 0, 0); } - if (priv->has_scrollbuttons) - delay = repeat_scrollbuttons(pInfo, hw, buttons, now, delay); - /* Process scroll events only if coordinates are * in the Synaptics Area */ @@ -3452,25 +2954,9 @@ static int SwitchMode(ClientPtr client, DeviceIntPtr dev, int mode) { - InputInfoPtr pInfo = (InputInfoPtr) dev->public.devicePrivate; - SynapticsPrivate *priv = (SynapticsPrivate *) (pInfo->private); - DBG(3, "SwitchMode called\n"); - switch (mode) { - case Absolute: - priv->absolute_events = TRUE; - break; - - case Relative: - priv->absolute_events = FALSE; - break; - - default: - return XI_BadMode; - } - - return Success; + return XI_BadMode; } static void diff -Nru xserver-xorg-input-synaptics-1.6.3/src/synapticsstr.h xserver-xorg-input-synaptics-1.7.1/src/synapticsstr.h --- xserver-xorg-input-synaptics-1.6.3/src/synapticsstr.h 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/synapticsstr.h 2013-05-13 00:03:25.000000000 +0000 @@ -23,7 +23,6 @@ #define _SYNAPTICSSTR_H_ #include "synproto.h" -#include #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 18 #define LogMessageVerbSigSafe xf86MsgVerb @@ -40,20 +39,38 @@ #define DBG(verb, msg, ...) /* */ #endif -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12 -#define xf86IDrvMsg(pInfo, type, ...) xf86Msg(type, __VA_ARGS__) -#endif - -#ifdef AXIS_LABEL_PROP_REL_VSCROLL -#define HAVE_SMOOTH_SCROLL -#endif - /****************************************************************************** * Definitions * structs, typedefs, #defines, enums *****************************************************************************/ #define SYNAPTICS_MOVE_HISTORY 5 #define SYNAPTICS_MAX_TOUCHES 10 +#define SYN_MAX_BUTTONS 12 /* Max number of mouse buttons */ + +enum OffState { + TOUCHPAD_ON = 0, + TOUCHPAD_OFF = 1, + TOUCHPAD_TAP_OFF = 2, +}; + +enum TapEvent { + RT_TAP = 0, /* Right top corner */ + RB_TAP, /* Right bottom corner */ + LT_TAP, /* Left top corner */ + LB_TAP, /* Left bottom corner */ + F1_TAP, /* Non-corner tap, one finger */ + F2_TAP, /* Non-corner tap, two fingers */ + F3_TAP, /* Non-corner tap, three fingers */ + MAX_TAP +}; + +enum ClickFingerEvent { + F1_CLICK1 = 0, /* Click left, one finger */ + F2_CLICK1, /* Click left, two fingers */ + F3_CLICK1, /* Click left, three fingers */ + MAX_CLICK +}; + typedef struct _SynapticsMoveHist { int x, y; @@ -77,7 +94,6 @@ enum MovingState { MS_FALSE, MS_TOUCHPAD_RELATIVE, - MS_TRACKSTICK /* trackstick is always relative */ }; enum MidButtonEmulation { @@ -117,7 +133,8 @@ MODEL_SYNAPTICS, MODEL_ALPS, MODEL_APPLETOUCH, - MODEL_ELANTECH + MODEL_ELANTECH, + MODEL_UNIBODY_MACBOOK }; typedef struct _SynapticsParameters { @@ -130,7 +147,6 @@ int tap_time_2; /* max. tapping time for double taps */ int click_time; /* The duration of a single click */ Bool clickpad; /* Device is a has integrated buttons */ - Bool fast_taps; /* Faster reaction to single taps */ int emulate_mid_button_time; /* Max time between left and right button presses to emulate a middle button press. */ int emulate_twofinger_z; /* pressure threshold to emulate two finger touch (for Alps) */ @@ -143,19 +159,7 @@ Bool scroll_twofinger_vert; /* Enable/disable vertical two-finger scrolling */ Bool scroll_twofinger_horiz; /* Enable/disable horizontal two-finger scrolling */ double min_speed, max_speed, accl; /* movement parameters */ - double trackstick_speed; /* trackstick mode speed */ - int edge_motion_min_z; /* finger pressure at which minimum edge motion speed is set */ - int edge_motion_max_z; /* finger pressure at which maximum edge motion speed is set */ - int edge_motion_min_speed; /* slowest setting for edge motion speed */ - int edge_motion_max_speed; /* fastest setting for edge motion speed */ - Bool edge_motion_use_always; /* If false, edge motion is used only when dragging */ - - Bool updown_button_scrolling; /* Up/Down-Button scrolling or middle/double-click */ - Bool leftright_button_scrolling; /* Left/right-button scrolling, or two lots of middle button */ - Bool updown_button_repeat; /* If up/down button being used to scroll, auto-repeat? */ - Bool leftright_button_repeat; /* If left/right button being used to scroll, auto-repeat? */ - int scroll_button_repeat; /* time, in milliseconds, between scroll events being - * sent when holding down scroll buttons */ + int touchpad_off; /* Switches the touchpad off * 0 : Not off * 1 : Off @@ -168,7 +172,6 @@ Bool circular_scrolling; /* Enable circular scrolling */ double scroll_dist_circ; /* Scrolling angle radians */ int circular_trigger; /* Trigger area for circular scrolling */ - Bool circular_pad; /* Edge has an oval or circular shape */ Bool palm_detect; /* Enable Palm Detection */ int palm_min_width; /* Palm detection width */ int palm_min_z; /* Palm detection depth */ @@ -190,8 +193,6 @@ struct _SynapticsPrivateRec { SynapticsParameters synpara; /* Default parameter settings, read from the X config file */ - SynapticsSHM *synshm; /* Current parameter settings. Will point to - shared memory if shm_config is true */ struct SynapticsProtocolOperations *proto_ops; void *proto_data; /* protocol-specific data */ @@ -199,16 +200,13 @@ struct SynapticsHwState *old_hw_state; /* previous logical hw state */ const char *device; /* device node */ - Bool shm_config; /* True when shared memory area allocated */ - CARD32 timer_time; /* when timer last fired */ - OsTimerPtr timer; /* for up/down-button repeat, tap processing, etc */ + OsTimerPtr timer; /* for tap processing, etc */ struct CommData comm; struct SynapticsHwState *local_hw_state; /* used in place of local hw state variables */ - Bool absolute_events; /* post absolute motion events instead of relative */ SynapticsMoveHistRec move_hist[SYNAPTICS_MOVE_HISTORY]; /* movement history */ int hist_index; /* Last added entry in move_hist[] */ int hyst_center_x; /* center x of hysteresis */ @@ -246,12 +244,8 @@ Bool circ_scroll_on; /* Keeps track of currently active scroll modes */ Bool circ_scroll_vert; /* True: Generate vertical scroll events False: Generate horizontal events */ - int trackstick_neutral_x; /* neutral x position for trackstick mode */ - int trackstick_neutral_y; /* neutral y position for trackstick mode */ double frac_x, frac_y; /* absolute -> relative fraction */ enum MidButtonEmulation mid_emu_state; /* emulated 3rd button */ - int repeatButtons; /* buttons for repeat */ - int nextRepeat; /* Time when to trigger next auto repeat event */ int lastButtons; /* last state of the buttons */ int prev_z; /* previous z value, for palm detection */ int prevFingers; /* previous numFingers, for transition detection */ @@ -276,13 +270,10 @@ unsigned short id_vendor; /* vendor id */ unsigned short id_product; /* product id */ -#ifdef HAVE_SMOOTH_SCROLL int scroll_axis_horiz; /* Horizontal smooth-scrolling axis */ int scroll_axis_vert; /* Vertical smooth-scrolling axis */ ValuatorMask *scroll_events_mask; /* ValuatorMask for smooth-scrolling */ -#endif -#ifdef HAVE_MULTITOUCH Bool has_touch; /* Device has multitouch capabilities */ int max_touches; /* Number of touches supported */ int num_mt_axes; /* Number of multitouch axes other than X, Y */ @@ -290,7 +281,6 @@ int num_slots; /* Number of touch slots allocated */ int *open_slots; /* Array of currently open touch slots */ int num_active_touches; /* Number of active touches on device */ -#endif }; #endif /* _SYNAPTICSSTR_H_ */ diff -Nru xserver-xorg-input-synaptics-1.6.3/src/synproto.c xserver-xorg-input-synaptics-1.7.1/src/synproto.c --- xserver-xorg-input-synaptics-1.6.3/src/synproto.c 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/synproto.c 2013-05-13 00:03:25.000000000 +0000 @@ -22,10 +22,8 @@ */ #include "synproto.h" -#include "synaptics.h" #include "synapticsstr.h" -#ifdef HAVE_MULTITOUCH static int HwStateAllocTouch(struct SynapticsHwState *hw, SynapticsPrivate * priv) { @@ -60,7 +58,6 @@ hw->mt_mask = NULL; return BadAlloc; } -#endif struct SynapticsHwState * SynapticsHwStateAlloc(SynapticsPrivate * priv) @@ -71,12 +68,10 @@ if (!hw) return NULL; -#ifdef HAVE_MULTITOUCH if (HwStateAllocTouch(hw, priv) != Success) { free(hw); return NULL; } -#endif return hw; } @@ -84,7 +79,6 @@ void SynapticsHwStateFree(struct SynapticsHwState **hw) { -#ifdef HAVE_MULTITOUCH int i; if (!*hw) @@ -94,7 +88,6 @@ for (i = 0; i < (*hw)->num_mt_mask; i++) valuator_mask_free(&(*hw)->mt_mask[i]); free((*hw)->mt_mask); -#endif free(*hw); *hw = NULL; @@ -104,9 +97,7 @@ SynapticsCopyHwState(struct SynapticsHwState *dst, const struct SynapticsHwState *src) { -#ifdef HAVE_MULTITOUCH int i; -#endif dst->millis = src->millis; dst->x = src->x; @@ -122,12 +113,10 @@ dst->down = src->down; memcpy(dst->multi, src->multi, sizeof(dst->multi)); dst->middle = src->middle & BTN_EMULATED_FLAG ? 0 : src->middle; -#ifdef HAVE_MULTITOUCH for (i = 0; i < dst->num_mt_mask && i < src->num_mt_mask; i++) valuator_mask_copy(dst->mt_mask[i], src->mt_mask[i]); memcpy(dst->slot_state, src->slot_state, dst->num_mt_mask * sizeof(enum SynapticsSlotState)); -#endif } void @@ -156,7 +145,6 @@ void SynapticsResetTouchHwState(struct SynapticsHwState *hw, Bool set_slot_empty) { -#ifdef HAVE_MULTITOUCH int i; for (i = 0; i < hw->num_mt_mask; i++) { @@ -179,5 +167,4 @@ break; } } -#endif } diff -Nru xserver-xorg-input-synaptics-1.6.3/src/synproto.h xserver-xorg-input-synaptics-1.7.1/src/synproto.h --- xserver-xorg-input-synaptics-1.6.3/src/synproto.h 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/src/synproto.h 2013-05-13 00:03:25.000000000 +0000 @@ -27,13 +27,15 @@ #ifndef _SYNPROTO_H_ #define _SYNPROTO_H_ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include #include #include #include -#include "config.h" - struct _SynapticsPrivateRec; typedef struct _SynapticsPrivateRec SynapticsPrivate; @@ -69,11 +71,9 @@ Bool multi[8]; Bool middle; /* Some ALPS touchpads have a middle button */ -#ifdef HAVE_MULTITOUCH int num_mt_mask; ValuatorMask **mt_mask; enum SynapticsSlotState *slot_state; -#endif }; struct CommData { @@ -122,7 +122,7 @@ const struct SynapticsHwState *src); extern void SynapticsResetHwState(struct SynapticsHwState *hw); extern void SynapticsResetTouchHwState(struct SynapticsHwState *hw, - Bool force_empty); + Bool set_slot_empty); extern Bool SynapticsIsSoftButtonAreasValid(int *values); diff -Nru xserver-xorg-input-synaptics-1.6.3/test/Makefile.in xserver-xorg-input-synaptics-1.7.1/test/Makefile.in --- xserver-xorg-input-synaptics-1.6.3/test/Makefile.in 2013-02-01 05:36:08.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/test/Makefile.in 2013-05-13 00:04:22.000000000 +0000 @@ -152,7 +152,6 @@ DLLTOOL = @DLLTOOL@ DRIVER_MAN_DIR = @DRIVER_MAN_DIR@ DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@ -DRIVER_NAME = @DRIVER_NAME@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ @@ -213,8 +212,6 @@ STRICT_CFLAGS = @STRICT_CFLAGS@ STRIP = @STRIP@ VERSION = @VERSION@ -XI22_CFLAGS = @XI22_CFLAGS@ -XI22_LIBS = @XI22_LIBS@ XI_CFLAGS = @XI_CFLAGS@ XI_LIBS = @XI_LIBS@ XORG_CFLAGS = @XORG_CFLAGS@ diff -Nru xserver-xorg-input-synaptics-1.6.3/test/eventcomm-test.c xserver-xorg-input-synaptics-1.7.1/test/eventcomm-test.c --- xserver-xorg-input-synaptics-1.6.3/test/eventcomm-test.c 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/test/eventcomm-test.c 2013-05-13 00:03:25.000000000 +0000 @@ -31,7 +31,6 @@ #include #include -#include "synaptics.h" #include "synapticsstr.h" #include "eventcomm.h" diff -Nru xserver-xorg-input-synaptics-1.6.3/test/fake-symbols.c xserver-xorg-input-synaptics-1.7.1/test/fake-symbols.c --- xserver-xorg-input-synaptics-1.6.3/test/fake-symbols.c 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/test/fake-symbols.c 2013-05-13 00:03:25.000000000 +0000 @@ -1,7 +1,6 @@ #include "fake-symbols.h" -_X_EXPORT - int +_X_EXPORT int xf86ReadSerial(int fd, void *buf, int count) { return 0; @@ -26,7 +25,7 @@ } _X_EXPORT int -xf86OpenSerial(OPTTYPE options) +xf86OpenSerial(XF86OptionPtr options) { return 0; } @@ -37,44 +36,44 @@ return 0; } -_X_EXPORT OPTTYPE -xf86ReplaceIntOption(OPTTYPE optlist, const char *name, const int val) +_X_EXPORT XF86OptionPtr +xf86ReplaceIntOption(XF86OptionPtr optlist, const char *name, const int val) { return NULL; } _X_EXPORT char * -xf86SetStrOption(OPTTYPE optlist, const char *name, CONST char *deflt) +xf86SetStrOption(XF86OptionPtr optlist, const char *name, const char *deflt) { return NULL; } _X_EXPORT int -xf86SetBoolOption(OPTTYPE optlist, const char *name, int deflt) +xf86SetBoolOption(XF86OptionPtr optlist, const char *name, int deflt) { return 0; } -_X_EXPORT OPTTYPE -xf86AddNewOption(OPTTYPE head, const char *name, const char *val) +_X_EXPORT XF86OptionPtr +xf86AddNewOption(XF86OptionPtr head, const char *name, const char *val) { return NULL; } -_X_EXPORT CONST char * -xf86FindOptionValue(OPTTYPE options, const char *name) +_X_EXPORT const char * +xf86FindOptionValue(XF86OptionPtr options, const char *name) { return NULL; } _X_EXPORT char * -xf86OptionName(OPTTYPE opt) +xf86OptionName(XF86OptionPtr opt) { return NULL; } _X_EXPORT char * -xf86OptionValue(OPTTYPE opt) +xf86OptionValue(XF86OptionPtr opt) { return NULL; } @@ -138,13 +137,11 @@ return; } -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 11 _X_EXPORT void FreeInputAttributes(InputAttributes * attrs) { return; } -#endif _X_EXPORT void xf86PostButtonEvent(DeviceIntPtr device, @@ -179,8 +176,8 @@ return; } -_X_EXPORT OPTTYPE -xf86OptionListDuplicate(OPTTYPE options) +_X_EXPORT XF86OptionPtr +xf86OptionListDuplicate(XF86OptionPtr options) { return NULL; } @@ -207,7 +204,7 @@ } _X_EXPORT int -xf86SetIntOption(OPTTYPE optlist, const char *name, int deflt) +xf86SetIntOption(XF86OptionPtr optlist, const char *name, int deflt) { return 0; } @@ -217,10 +214,7 @@ int is_absolute, int button, int is_down, int first_valuator, int num_valuators, -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12 - const -#endif - int *valuators) + const int *valuators) { return; } @@ -234,7 +228,7 @@ _X_EXPORT int XIChangeDeviceProperty(DeviceIntPtr dev, Atom property, Atom type, int format, int mode, unsigned long len, - OPTTYPE value, Bool sendevent) + XF86OptionPtr value, Bool sendevent) { return 0; } @@ -247,9 +241,7 @@ _X_EXPORT int NewInputDeviceRequest(InputOption *options, -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 11 InputAttributes * attrs, -#endif DeviceIntPtr *pdev) { return 0; @@ -261,13 +253,11 @@ return FALSE; } -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 11 _X_EXPORT InputAttributes * DuplicateInputAttributes(InputAttributes * attrs) { return NULL; } -#endif _X_EXPORT int ValidAtom(Atom atom) @@ -329,10 +319,7 @@ _X_EXPORT void xf86PostMotionEventP(DeviceIntPtr device, int is_absolute, int first_valuator, int num_valuators, -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12 - const -#endif - int *valuators) + const int *valuators) { return; } @@ -344,14 +331,14 @@ return FALSE; } -_X_EXPORT OPTTYPE -xf86ReplaceStrOption(OPTTYPE optlist, const char *name, const char *val) +_X_EXPORT XF86OptionPtr +xf86ReplaceStrOption(XF86OptionPtr optlist, const char *name, const char *val) { return NULL; } -_X_EXPORT OPTTYPE -xf86NextOption(OPTTYPE list) +_X_EXPORT XF86OptionPtr +xf86NextOption(XF86OptionPtr list) { return NULL; } @@ -377,10 +364,7 @@ _X_EXPORT void xf86PostProximityEventP(DeviceIntPtr device, int is_in, int first_valuator, int num_valuators, -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12 - const -#endif - int *valuators) + const int *valuators) { return; } @@ -391,26 +375,23 @@ return FALSE; } -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12 void -xf86ProcessCommonOptions(InputInfoPtr pInfo, OPTTYPE list) +xf86ProcessCommonOptions(InputInfoPtr pInfo, XF86OptionPtr list) { } void xf86CollectInputOptions(InputInfoPtr pInfo, - const char **defaultOpts, OPTTYPE extraOpts) + const char **defaultOpts) { } InputInfoPtr -xf86AllocateInput(InputDriverPtr drv, int flags) +xf86AllocateInput(void) { return NULL; } -#endif - ClientPtr serverClient; Bool @@ -421,7 +402,6 @@ return FALSE; } -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12 _X_EXPORT ValuatorMask * valuator_mask_new(int num_valuators) { @@ -464,12 +444,9 @@ valuator_mask_copy(ValuatorMask *dest, const ValuatorMask *src) { } -#endif -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 16 _X_EXPORT void xf86PostTouchEvent(DeviceIntPtr dev, uint32_t touchid, uint16_t type, uint32_t flags, const ValuatorMask *mask) { } -#endif diff -Nru xserver-xorg-input-synaptics-1.6.3/test/fake-symbols.h xserver-xorg-input-synaptics-1.7.1/test/fake-symbols.h --- xserver-xorg-input-synaptics-1.6.3/test/fake-symbols.h 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/test/fake-symbols.h 2013-05-13 00:03:25.000000000 +0000 @@ -1,37 +1,29 @@ #include #include -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 14 -#define OPTTYPE XF86OptionPtr -#define CONST const -#else -#define OPTTYPE pointer -#define CONST -#endif - extern int xf86ReadSerial(int fd, void *buf, int count); extern int xf86WriteSerial(int fd, const void *buf, int count); extern int xf86CloseSerial(int fd); extern int xf86WaitForInput(int fd, int timeout); -extern int xf86OpenSerial(OPTTYPE options); +extern int xf86OpenSerial(XF86OptionPtr options); extern int xf86SetSerialSpeed(int fd, int speed); -extern OPTTYPE xf86ReplaceIntOption(OPTTYPE optlist, const char *name, +extern XF86OptionPtr xf86ReplaceIntOption(XF86OptionPtr optlist, const char *name, const int val); -extern OPTTYPE xf86AddNewOption(OPTTYPE head, const char *name, +extern XF86OptionPtr xf86AddNewOption(XF86OptionPtr head, const char *name, const char *val); -extern char *xf86OptionName(OPTTYPE opt); -extern CONST char *xf86FindOptionValue(OPTTYPE options, const char *name); +extern char *xf86OptionName(XF86OptionPtr opt); +extern const char *xf86FindOptionValue(XF86OptionPtr options, const char *name); extern int xf86NameCmp(const char *s1, const char *s2); -extern char *xf86SetStrOption(OPTTYPE optlist, const char *name, - CONST char *deflt); -extern int xf86SetBoolOption(OPTTYPE optlist, const char *name, int deflt); -extern OPTTYPE xf86AddNewOption(OPTTYPE head, const char *name, +extern char *xf86SetStrOption(XF86OptionPtr optlist, const char *name, + const char *deflt); +extern int xf86SetBoolOption(XF86OptionPtr optlist, const char *name, int deflt); +extern XF86OptionPtr xf86AddNewOption(XF86OptionPtr head, const char *name, const char *val); -extern CONST char *xf86FindOptionValue(OPTTYPE options, const char *name); -extern char *xf86OptionName(OPTTYPE opt); -extern char *xf86OptionValue(OPTTYPE opt); +extern const char *xf86FindOptionValue(XF86OptionPtr options, const char *name); +extern char *xf86OptionName(XF86OptionPtr opt); +extern char *xf86OptionValue(XF86OptionPtr opt); extern int xf86NameCmp(const char *s1, const char *s2); extern void xf86AddEnabledDevice(InputInfoPtr pInfo); extern void xf86RemoveEnabledDevice(InputInfoPtr pInfo); @@ -42,10 +34,7 @@ xf86ScaleAxis(int Cx, int to_max, int to_min, int from_max, int from_min); extern void DeleteInputDeviceRequest(DeviceIntPtr pDev); - -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 11 extern void FreeInputAttributes(InputAttributes * attrs); -#endif extern void xf86PostButtonEvent(DeviceIntPtr device, @@ -58,7 +47,7 @@ extern InputInfoPtr xf86FirstLocalDevice(void); extern void xf86DeleteInput(InputInfoPtr pInp, int flags); -extern OPTTYPE xf86OptionListDuplicate(OPTTYPE options); +extern XF86OptionPtr xf86OptionListDuplicate(XF86OptionPtr options); extern Bool InitButtonClassDeviceStruct(DeviceIntPtr dev, int numButtons, Atom *labels, @@ -71,17 +60,14 @@ extern void xf86PostKeyboardEvent(DeviceIntPtr device, unsigned int key_code, int is_down); extern int - xf86SetIntOption(OPTTYPE optlist, const char *name, int deflt); + xf86SetIntOption(XF86OptionPtr optlist, const char *name, int deflt); extern void xf86PostButtonEventP(DeviceIntPtr device, int is_absolute, int button, int is_down, int first_valuator, int num_valuators, -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12 - const -#endif - int *valuators); + const int *valuators); extern Bool InitPtrFeedbackClassDeviceStruct(DeviceIntPtr dev, PtrCtrlProcPtr controlProc); @@ -89,22 +75,18 @@ XIChangeDeviceProperty(DeviceIntPtr dev, Atom property, Atom type, int format, int mode, unsigned long len, - OPTTYPE value, Bool sendevent); + XF86OptionPtr value, Bool sendevent); extern CARD32 GetTimeInMillis(void); extern int NewInputDeviceRequest(InputOption *options, -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 11 InputAttributes * attrs, -#endif DeviceIntPtr *pdev); extern Bool InitLedFeedbackClassDeviceStruct(DeviceIntPtr dev, LedCtrlProcPtr controlProc); -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 11 extern InputAttributes *DuplicateInputAttributes(InputAttributes * attrs); -#endif extern int ValidAtom(Atom atom); extern Bool @@ -128,23 +110,19 @@ ...); extern void - xf86PostMotionEventP(DeviceIntPtr device, int is_absolute, int first_valuator, int num_valuators, -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12 - const -#endif - int *valuators); + const int *valuators); extern Bool InitValuatorClassDeviceStruct(DeviceIntPtr dev, int numAxes, Atom *labels, int numMotionEvents, int mode); -extern OPTTYPE -xf86ReplaceStrOption(OPTTYPE optlist, const char *name, const char *val); +extern XF86OptionPtr +xf86ReplaceStrOption(XF86OptionPtr optlist, const char *name, const char *val); -extern OPTTYPE xf86NextOption(OPTTYPE list); +extern XF86OptionPtr xf86NextOption(XF86OptionPtr list); extern int @@ -155,26 +133,20 @@ extern int GetMotionHistorySize(void); extern void - xf86PostProximityEventP(DeviceIntPtr device, int is_in, int first_valuator, int num_valuators, -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12 - const -#endif - int *valuators); + const int *valuators); extern Bool InitFocusClassDeviceStruct(DeviceIntPtr dev); -#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12 extern void - xf86ProcessCommonOptions(InputInfoPtr pInfo, OPTTYPE list); + xf86ProcessCommonOptions(InputInfoPtr pInfo, XF86OptionPtr list); extern void - xf86CollectInputOptions(InputInfoPtr pInfo, - const char **defaultOpts, OPTTYPE extraOpts); + const char **defaultOpts); -extern InputInfoPtr xf86AllocateInput(InputDriverPtr drv, int flags); +extern InputInfoPtr xf86AllocateInput(void); extern ClientPtr serverClient; @@ -182,4 +154,3 @@ QueueWorkProc(Bool (*function) (ClientPtr /* pClient */ , pointer /* closure */ ), ClientPtr client, pointer closure); -#endif diff -Nru xserver-xorg-input-synaptics-1.6.3/tools/Makefile.in xserver-xorg-input-synaptics-1.7.1/tools/Makefile.in --- xserver-xorg-input-synaptics-1.6.3/tools/Makefile.in 2013-02-01 05:36:08.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/tools/Makefile.in 2013-05-13 00:04:22.000000000 +0000 @@ -167,7 +167,6 @@ DLLTOOL = @DLLTOOL@ DRIVER_MAN_DIR = @DRIVER_MAN_DIR@ DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@ -DRIVER_NAME = @DRIVER_NAME@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ @@ -228,8 +227,6 @@ STRICT_CFLAGS = @STRICT_CFLAGS@ STRIP = @STRIP@ VERSION = @VERSION@ -XI22_CFLAGS = @XI22_CFLAGS@ -XI22_LIBS = @XI22_LIBS@ XI_CFLAGS = @XI_CFLAGS@ XI_LIBS = @XI_LIBS@ XORG_CFLAGS = @XORG_CFLAGS@ diff -Nru xserver-xorg-input-synaptics-1.6.3/tools/synclient.c xserver-xorg-input-synaptics-1.7.1/tools/synclient.c --- xserver-xorg-input-synaptics-1.6.3/tools/synclient.c 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/tools/synclient.c 2013-05-13 00:03:25.000000000 +0000 @@ -32,7 +32,6 @@ #include #include #include -#include #include #include #include @@ -44,13 +43,14 @@ #include #include #include -#include "synaptics.h" #include "synaptics-properties.h" #ifndef XATOM_FLOAT #define XATOM_FLOAT "FLOAT" #endif +#define SYN_MAX_BUTTONS 12 + union flong { /* Xlibs 64-bit property handling madness */ long l; float f; @@ -79,7 +79,6 @@ {"BottomEdge", PT_INT, 0, 10000, SYNAPTICS_PROP_EDGES, 32, 3}, {"FingerLow", PT_INT, 0, 255, SYNAPTICS_PROP_FINGER, 32, 0}, {"FingerHigh", PT_INT, 0, 255, SYNAPTICS_PROP_FINGER, 32, 1}, - {"FingerPress", PT_INT, 0, 256, SYNAPTICS_PROP_FINGER, 32, 2}, {"MaxTapTime", PT_INT, 0, 1000, SYNAPTICS_PROP_TAP_TIME, 32, 0}, {"MaxTapMove", PT_INT, 0, 2000, SYNAPTICS_PROP_TAP_MOVE, 32, 0}, {"MaxDoubleTapTime", PT_INT, 0, 1000, SYNAPTICS_PROP_TAP_DURATIONS,32, 1}, @@ -99,17 +98,6 @@ {"MinSpeed", PT_DOUBLE, 0, 255.0, SYNAPTICS_PROP_SPEED, 0, /*float */ 0}, {"MaxSpeed", PT_DOUBLE, 0, 255.0, SYNAPTICS_PROP_SPEED, 0, /*float */ 1}, {"AccelFactor", PT_DOUBLE, 0, 1.0, SYNAPTICS_PROP_SPEED, 0, /*float */ 2}, - {"TrackstickSpeed", PT_DOUBLE, 0, 200.0, SYNAPTICS_PROP_SPEED, 0, /*float */ 3}, - {"EdgeMotionMinZ", PT_INT, 1, 255, SYNAPTICS_PROP_EDGEMOTION_PRESSURE, 32, 0}, - {"EdgeMotionMaxZ", PT_INT, 1, 255, SYNAPTICS_PROP_EDGEMOTION_PRESSURE, 32, 1}, - {"EdgeMotionMinSpeed", PT_INT, 0, 1000, SYNAPTICS_PROP_EDGEMOTION_SPEED, 32, 0}, - {"EdgeMotionMaxSpeed", PT_INT, 0, 1000, SYNAPTICS_PROP_EDGEMOTION_SPEED, 32, 1}, - {"EdgeMotionUseAlways", PT_BOOL, 0, 1, SYNAPTICS_PROP_EDGEMOTION, 8, 0}, - {"UpDownScrolling", PT_BOOL, 0, 1, SYNAPTICS_PROP_BUTTONSCROLLING, 8, 0}, - {"LeftRightScrolling", PT_BOOL, 0, 1, SYNAPTICS_PROP_BUTTONSCROLLING, 8, 1}, - {"UpDownScrollRepeat", PT_BOOL, 0, 1, SYNAPTICS_PROP_BUTTONSCROLLING_REPEAT, 8, 0}, - {"LeftRightScrollRepeat", PT_BOOL, 0, 1, SYNAPTICS_PROP_BUTTONSCROLLING_REPEAT, 8, 1}, - {"ScrollButtonRepeat", PT_INT, SBR_MIN , SBR_MAX, SYNAPTICS_PROP_BUTTONSCROLLING_TIME, 32, 0}, {"TouchpadOff", PT_INT, 0, 2, SYNAPTICS_PROP_OFF, 8, 0}, {"LockedDrags", PT_BOOL, 0, 1, SYNAPTICS_PROP_LOCKED_DRAGS, 8, 0}, {"LockedDragTimeout", PT_INT, 0, 30000, SYNAPTICS_PROP_LOCKED_DRAGS_TIMEOUT, 32, 0}, @@ -126,7 +114,6 @@ {"CircularScrolling", PT_BOOL, 0, 1, SYNAPTICS_PROP_CIRCULAR_SCROLLING, 8, 0}, {"CircScrollDelta", PT_DOUBLE, .01, 3, SYNAPTICS_PROP_CIRCULAR_SCROLLING_DIST, 0 /* float */, 0}, {"CircScrollTrigger", PT_INT, 0, 8, SYNAPTICS_PROP_CIRCULAR_SCROLLING_TRIGGER, 8, 0}, - {"CircularPad", PT_BOOL, 0, 1, SYNAPTICS_PROP_CIRCULAR_PAD, 8, 0}, {"PalmDetect", PT_BOOL, 0, 1, SYNAPTICS_PROP_PALM_DETECT, 8, 0}, {"PalmMinWidth", PT_INT, 0, 15, SYNAPTICS_PROP_PALM_DIMENSIONS, 32, 0}, {"PalmMinZ", PT_INT, 0, 255, SYNAPTICS_PROP_PALM_DIMENSIONS, 32, 1}, @@ -197,108 +184,6 @@ return 0; } -static int -is_equal(SynapticsSHM * s1, SynapticsSHM * s2) -{ - int i; - - if ((s1->x != s2->x) || - (s1->y != s2->y) || - (s1->z != s2->z) || - (s1->numFingers != s2->numFingers) || - (s1->fingerWidth != s2->fingerWidth) || - (s1->left != s2->left) || - (s1->right != s2->right) || - (s1->up != s2->up) || - (s1->down != s2->down) || (s1->middle != s2->middle)) - return 0; - - for (i = 0; i < 8; i++) - if (s1->multi[i] != s2->multi[i]) - return 0; - - return 1; -} - -static double -get_time(void) -{ - struct timeval tv; - - gettimeofday(&tv, NULL); - return tv.tv_sec + tv.tv_usec / 1000000.0; -} - -static void -shm_monitor(SynapticsSHM * synshm, int delay) -{ - int header = 0; - SynapticsSHM old; - double t0 = get_time(); - - memset(&old, 0, sizeof(SynapticsSHM)); - old.x = -1; /* Force first equality test to fail */ - - while (1) { - SynapticsSHM cur = *synshm; - - if (!is_equal(&old, &cur)) { - if (!header) { - printf("%8s %4s %4s %3s %s %2s %2s %s %s %s %s %8s " - "%2s %2s %2s %3s %3s\n", - "time", "x", "y", "z", "f", "w", "l", "r", "u", "d", "m", - "multi", "gl", "gm", "gr", "gdx", "gdy"); - header = 20; - } - header--; - printf - ("%8.3f %4d %4d %3d %d %2d %2d %d %d %d %d %d%d%d%d%d%d%d%d\n", - get_time() - t0, cur.x, cur.y, cur.z, cur.numFingers, - cur.fingerWidth, cur.left, cur.right, cur.up, cur.down, - cur.middle, cur.multi[0], cur.multi[1], cur.multi[2], - cur.multi[3], cur.multi[4], cur.multi[5], cur.multi[6], - cur.multi[7]); - fflush(stdout); - old = cur; - } - usleep(delay * 1000); - } -} - -/** Init and return SHM area or NULL on error */ -static SynapticsSHM * -shm_init() -{ - SynapticsSHM *synshm = NULL; - int shmid = 0; - - 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"); - else - fprintf(stderr, - "Incorrect size of shared memory area. Incompatible driver version?\n"); - } - else if ((synshm = (SynapticsSHM *) shmat(shmid, NULL, SHM_RDONLY)) == NULL) - perror("shmat"); - - return synshm; -} - -static void -shm_process_commands(int do_monitor, int delay) -{ - SynapticsSHM *synshm = NULL; - - synshm = shm_init(); - if (!synshm) - return; - - if (do_monitor) - shm_monitor(synshm, delay); -} - /** Init display connection or NULL on error */ static Display * dp_init() @@ -576,11 +461,7 @@ static void usage(void) { - fprintf(stderr, - "Usage: synclient [-s] [-m interval] [-h] [-l] [-V] [-?] [var1=value1 [var2=value2] ...]\n"); - fprintf(stderr, - " -m monitor changes to the touchpad state (implies -s)\n" - " interval specifies how often (in ms) to poll the touchpad state\n"); + fprintf(stderr, "Usage: synclient [-h] [-l] [-V] [-?] [var1=value1 [var2=value2] ...]\n"); fprintf(stderr, " -l List current user settings\n"); fprintf(stderr, " -V Print synclient version string and exit\n"); fprintf(stderr, " -? Show this help message\n"); @@ -592,8 +473,6 @@ main(int argc, char *argv[]) { int c; - int delay = -1; - int do_monitor = 0; int dump_settings = 0; int first_cmd; @@ -604,32 +483,24 @@ dump_settings = 1; /* Parse command line parameters */ - while ((c = getopt(argc, argv, "sm:hlV")) != -1) { + while ((c = getopt(argc, argv, "lV?")) != -1) { switch (c) { - case 'm': - do_monitor = 1; - if ((delay = atoi(optarg)) < 0) - usage(); - break; case 'l': dump_settings = 1; break; case 'V': printf("%s\n", VERSION); exit(0); + case '?': default: usage(); } } first_cmd = optind; - if (!do_monitor && !dump_settings && first_cmd == argc) + if (!dump_settings && first_cmd == argc) usage(); - /* Connect to the shared memory area */ - if (do_monitor) - shm_process_commands(do_monitor, delay); - dpy = dp_init(); if (!dpy || !(dev = dp_get_device(dpy))) return 1; diff -Nru xserver-xorg-input-synaptics-1.6.3/tools/syndaemon.c xserver-xorg-input-synaptics-1.7.1/tools/syndaemon.c --- xserver-xorg-input-synaptics-1.6.3/tools/syndaemon.c 2013-02-01 05:34:23.000000000 +0000 +++ xserver-xorg-input-synaptics-1.7.1/tools/syndaemon.c 2013-05-13 00:03:26.000000000 +0000 @@ -45,14 +45,13 @@ #include #include -#include "synaptics.h" #include "synaptics-properties.h" -typedef enum { +enum TouchpadState { TouchpadOn = 0, TouchpadOff = 1, TappingOff = 2 -} TouchpadState; +}; static Bool pad_disabled /* internal flag, this does not correspond to device state */ ; @@ -63,8 +62,8 @@ static Display *display; static XDevice *dev; static Atom touchpad_off_prop; -static TouchpadState previous_state; -static TouchpadState disable_state = TouchpadOff; +static enum TouchpadState previous_state; +static enum TouchpadState disable_state = TouchpadOff; static int verbose; #define KEYMAP_SIZE 32 @@ -89,6 +88,7 @@ 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"); + fprintf(stderr, " -? Show this help message.\n"); exit(1); } @@ -577,6 +577,7 @@ case 'v': verbose = 1; break; + case '?': default: usage(); break;