summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-10-30Revert "[syndaemon] switch over to input properties"Christoph Brill
This reverts commit 934bc0012f948c52aadc8eda912f7728fb7394a2. As requested by Peter Hutterer.
2008-10-28Add support for touchpads (such as Elantech) that do not report pressureDmitry Torokhov
Change the driver to react to BTN_TOUCH if device does not report ABS_PRESSURE since there are touchpads (such as Elantech) that do not support pressure reading but otherwise are perfectly useable in absolute mode. Also fix error checking of ioctl calls (positive return value is not an error, only negative is). Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-16[syndaemon] switch over to input propertiesWilliam Grant
This patch switches the daemon to use input properties. One can still use the SHMConfig as fallback. Signed-off-by: Christoph Brill <egore911@egore911.de>
2008-10-16[syndaemon] use Xrecord extension in syndaemon to avoid polling.Andre Herms
This patch prevents the polling of the keyboard state. Instead it uses the XRecord extension of the Xserver for an event triggered notification of key events. Of course, there is a fallback to the polling when no XRecord extension is found. This should finally stop complains of syndaemon preventing good power saving. Signed-off-by: Christoph Brill <egore911@egore911.de>
2008-10-16Provide default button emulation also for touchscreensHenrik Rydberg
The new auto-detection functionality of the driver provides a default way to produce left, right and middle clicks for all trackpads and touchscreens, based on capabilty. However, the current code only provides single click for touchscreens and trackpads without buttons. This patch turns on multi-finger tapping for such devices. Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com> Signed-off by: Christoph Brill <egore911@egore911.de>
2008-10-13Install header files in xserver's sdk dir.Peter Hutterer
Missing from 851097c45f02f2a033975cd3b2ed9490a4aa87bd. Don't install header files in <prefix>/include, install them in <prefix>/include/xorg instead.
2008-10-13properties: handle checkonly flag.Henrik Rydberg
if checkonly is TRUE, only check the values but do not apply them. This is achieved by working on a temporary copy of the parameters if checkonly is set, and ditching the copy after completion. If checkout is not set, the same code works on the actual parameters. Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-11Return correctly on successful property settingWilliam Grant
TRUE was not replaced with Success when all of the other property handler return codes were. This meant that properties ended up set in the driver but not the rest of the server. Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-10Convert last remaining ErrorF to xf86MsgMagnus Kessler
Signed-off-by: Magnus.Kessler <Magnus.Kessler@gmx.net> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-10Update .gitignore, ignore pkgconfig .pc filesMagnus Kessler
Signed-off-by: Magnus.Kessler <Magnus.Kessler@gmx.net> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-09[sparse] Fix warnings about non-ANSI function declarationsMagnus Kessler
Signed-off-by: Magnus Kessler <Magnus.Kessler@gmx.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Christoph Brill <egore911@egore911.de>
2008-10-09[sparse] Fix warnings about using plain integer as NULL pointerMagnus Kessler
Signed-off-by: Magnus Kessler <Magnus.Kessler@gmx.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Christoph Brill <egore911@egore911.de>
2008-10-09Only include mipointer.h if supporting ancient XInput ABI versionMagnus Kessler
Signed-off-by: Magnus Kessler <Magnus.Kessler@gmx.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Christoph Brill <egore911@egore911.de>
2008-10-07Remove unused defines and includesMagnus Kessler
Signed-off-by: Magnus Kessler <Magnus.Kessler@gmx.net> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-07Re-introduce message about unsupported touchpad.Magnus Kessler
Was dropped with the repeater device removal. Signed-off-by: Magnus Kessler <Magnus.Kessler@gmx.net> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-07Clean up control-flowMagnus Kessler
Signed-off-by: Magnus Kessler <Magnus.Kessler@gmx.net> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-07man: another typo fix.Peter Hutterer
2008-10-07man: Document multifinger-scrolling defaults.Peter Hutterer
If Protocol event is used, the driver initializes defaults based on the capabilities reported by the kernel driver. Acceleration and edges are based on the dimensions reported by the kernel. If the kernel reports multi-finger detection, two-finger vertical scrolling is enabled, horizontal two-finger scrolling is disabled and edge scrolling is disabled. If no multi-finger capabilities are reported, edge scrolling is enabled for both horizontal and vertical scrolling.
2008-10-07man: typo fix.Peter Hutterer
2008-10-03Remove repeater functionality.Magnus Kessler
Remove the repeater functionality completely from the synaptics touchpad driver. It is buggy in its current implementation and its usefulness is questionable. According to the INSTALL file, the repeater is there only for testing. In fact, if a supported device is found even a configured repeater fifo is automatically disabled. For most users the functionality is therefore irrelevant and can be confusing. If I understand the workings of the repeater correctly, a developer could instead just read the data directly from an unsupported device's character special file under /dev or /dev/input. With today's more dynamic device configuration possibilities via udev and hal it's also less likely that the synaptics driver would silently block another devices data, this situation being for what the repeater functionality seems to have been introduced in the past. Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-03Install synaptics-properties.h in xorg include path, install xorg-synaptics.pc.Peter Hutterer
2008-09-26Adjust to new property API.Peter Hutterer
XIConfigureDeviceProperty doesn't exist anymore. XIChangeDeviceProperty has two parameters less, returns status code. Explicitly set all properties as non-deletable.
2008-09-25Corrections based on dimension analysisHenrik Rydberg
The biggest change is to the speed and acceleration parameters, which should now scale properly. Starting from one end and moving a finger really slowly across the touchpad, the pointer should move about 40 percent of the way from one end to the other. Repeating the process more quickly, the pointer should move about 70 percent. Finally, moving really quickly, the pointer should reach the the other end of the screen before the whole touchpad has been crossed. Settings tested on appletouch, synaptics, and bcm5974. Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-25Init x/y valuators with the axis range - if we have any.Christoph Brill
Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-17Improved defaults based on capability detection and auto scalingHenrik Rydberg
This patch sets default parameters based on available buttons and multi-touch features. It also adds auto-scaling for parameters based on pressure and finger width. Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-17Revert "Add sensible fdi default for bcm5974"Henrik Rydberg
The new auto-scale and capability detection renders these defaults unnecessary. This reverts commit fd3517b14d09cc3b6625252f8fd94c863f1c9810. Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-17Allow arbitrary ABS rangesHenrik Rydberg
Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-17ReadDevDimensions on opened deviceHenrik Rydberg
The auto-dev probing requires opening the device locally to determine the type of device, so that the right protocol can be assigned. However, all other setup work should be performed during initialization of the assigned and opened device. This patch moves the read-device-dimensions functionality from some special cases during the probe process to the initialization routine, where it can be used for all supported devices. Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-17Autoscale also the MaxTapMove parameterHenrik Rydberg
Make the tapping move radius 7.2 percent of the touchpad width by default. This corresponds to the old settings of 220/3040, but works for all touchpad sizes. Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-17Decompose SynapticsPreInitHenrik Rydberg
This maintenance patch breaks out two functions from SynapticsPreInit: set_default_parameters and set_repeater_fifo. Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-17Introduce SynapticsUnInitHenrik Rydberg
This patch adds the UnInit function, which explicitly cleans up the allocated device. It also prepares for a distinction between closing-and-reopening a device, and shutting down X. This distinction makes it possible to better keep shared information alive. Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-10Bump to 0.15.2xf86-input-synaptics-0.15.2Christoph Brill
2008-09-10Do not use stale option list pointersHenrik Rydberg
The xf86ReplaceStrOption may change the option list pointer. Also make sure no stale option pointers are used after a call to SetDeviceAndProtocol(). Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
2008-09-10Optional: Set corner buttons to off by defaultHenrik Rydberg
The corner button functionality might be good on some touchpads, but it seems there are more cases where it leads to unexpected behavior. To avoid confusion, having this feature turned off by default makes more sense. However, there might be strong opinions it, so this patch will have to be considered optional. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
2008-09-10Add sensible fdi default for bcm5974Henrik Rydberg
The size and motion style of the bcm5974 trackpad does not work very well with the default settings in src/synaptics.c. This patch adds a well-tested set of default values, which will give a pleasant out-of-the-box experience for Xorg-1.5. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
2008-09-10Claim that we are a XI_TOUCHPAD, not a mouse.Peter Hutterer
If this still breaks with KDE, fix KDE or the server.
2008-09-09Improve edge autodetection and accel.Peter Hutterer
The synaptics spec specifies "typical axis ranges" for synaptics devices. Based on these typical ranges, calculate edge coordinates and apply the same proportions to the device at hand. Based on the hard-coded ranges and acceleration, calculate accel for autodetected ranges in the same proportions.
2008-09-09Pre-probe the device (eventcomm only).Peter Hutterer
For auto-dev, we'd probe the device node and get the axis ranges. If we specify the device however we didn't retrieve the axis ranges and thus got stuck with the defaults - losing out on automatic edge and accel calculation. This is an issue if the device is hotplugged, as HAL will specify the device node. This patch adds another hook to synproto_operations to pre-probe the device. This hook is only used by eventcomm and opens the FD, queries the axis range and closes the FD again.
2008-09-09Don't lose button up event if timeout is cancelled in the same ReadInput cyclePeter Hutterer
On a left/right button press, middle button emulation springs into action and changes the reported hw state. It then returns a delay that is supposed to set a timer. No button event is posted to the server, the timer ensures that it'll be posted later. If however - in the same cycle - the button up is reported, but with a hardware time > middle emulation timeout, the middle button emulation is canceled. The hw state is reset to button down, and processing continues, reporting the button down event. Since this is in the same cycle, the new delay overrides the previous one and the timer is never set. Introduce a new state into MB emulation that forces the click event if the above situation occurs. Red Hat Bug 233717 <http://bugzilla.redhat.com/show_bug.cgi?id=233717>
2008-09-09Don't crash when neither Path nor Device are given.Peter Hutterer
xf86ReplaceOption doesn't seem to like NULL values
2008-09-07Bump to 0.15.1xf86-input-synaptics-0.15.1Christoph Brill
2008-09-07Tighter default for MaxTapMoveHenrik Rydberg
The range that is considered moving during tapping is somewhat generous in the default settings. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
2008-09-07Disentangle two-finger tap and two-finger scrollingHenrik Rydberg
When two-finger-scrolling quickly and distinctly, the two-finger tapping gets activated, effectively selecting a portion of the selected text. The synaptics code already has logic to prevent taps from being registered when the fingers move; this patch simply removes what appears to be an unnecessary assumption that only single-finger clicks needs this functionality. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
2008-09-07Fix the "No such device" problem when reloading a driverHenrik Rydberg
The xf86SetStrOption function only sets the option variable to the local default if not already set to something else. Thus, the code which reloads a particular device by using this function often fails, simply because the sought device name isnt set properly. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
2008-09-07Add bcm5974 to fdi/11-x11-synaptics.fdiHenrik Rydberg
By adding bcm5974 to the HAL layer, the synaptics driver will be loaded by default for the new bcm5974-based Apple macbooks Pro Penryn and Air. Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
2008-09-07Add a note on how to pass options to the driver using the fdi fileChristoph Brill
2008-09-07Update man page to contain a paragraph about fdi filesChristoph Brill
2008-09-05syndaemon: fix BSD-specific build issues (signal related)Matthieu Herrb
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-05Fix build if we don't enable BUILD_EVENTCOMM.Matthieu Herrb
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-09-05Fix build with non-property enabled servers.Peter Hutterer
Thanks to Matthieu Herrb for reporting this.