Commit graph

507 commits

Author SHA1 Message Date
Peter Hutterer
d434b414bc doc/user: building - promote dependencies to a higher-level section
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-31 10:52:14 +10:00
Peter Hutterer
43b0f5212b doc/user: the SELinux section doesn't apply to modern meson
Related #96

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-31 10:52:08 +10:00
Peter Hutterer
98d3e99c56 doc/user: re-do the conditional build section
Related #96

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-31 10:51:54 +10:00
Peter Hutterer
649577187f doc/user: drop the autotools builds
Anyone who's still on <= 1.8 either knows how to build it already or relies on
a distribution to do that for them. Drop the section.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-31 10:50:30 +10:00
Peter Hutterer
43e35db26a doc/user: add a note on meson's dependency() in the building docs
See #96

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-31 10:22:31 +10:00
Peter Hutterer
dbd484f867 doc/user: mesonconf is meson configure
Listed in #96

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-31 10:17:59 +10:00
Peter Hutterer
345d1627ee doc/user: add a page detailing what configuration toggles are available
High level view only but at least it's a link we can point people to.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-30 12:24:04 +10:00
Peter Hutterer
cbd4f35442 dox: switch to sphinx for the user-visible documentation
This is a large commit because it's difficult to split this up and we don't
care about bisecting here anyway.

doxygen is going to produce the API documentation only
sphinx is going to produce the prose user (and a bit of developer) documentation.

The source split is doc/api and doc/user.

Steps performed:
- run the doxygen-to-sphinx.sh script to convert all .dox sources to .rst
- manually fixed the .rst to render correctly
- add a few extra .rst documents to generate the right hierarchy
- hook up sphinx-build in meson
- add a new @mainpage for doxygen more aimed at developers

For the build directory:
- sphinx produces /Documentation
- doxygen now produces /api/

These need to be manually combined in the wayland-web repo, meson doesn't
support subdirectories as output paths within the build dir and the
documentation doesn't need to be installed anywhere.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-30 12:24:04 +10:00
Peter Hutterer
c19b27a679 doc: split the graphs into a separate array for re-use
We need this in the sphinx documentation.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-27 17:26:56 +10:00
Peter Hutterer
e2bd413e09 doc: move the @verbatim start to the list item
This is mostly for sphinx' parsing benefit, doxygen doesn't need it and
renders the same either way.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-27 17:26:56 +10:00
Peter Hutterer
00186bb8af doc: device-quirks: redo the model quirks <dl> for sphinx' benefit
sphinx only supports one line of <dt> content, so we have to compress these.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-27 17:26:56 +10:00
Peter Hutterer
a154e85988 doc: a few replacements to make sphinx happy/prettier
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-27 17:26:56 +10:00
Peter Hutterer
38b812baf6 doc: enable warnings in doxygen
We want to see missed links

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-27 17:24:02 +10:00
Peter Hutterer
d6d208ab1a doc: move the Architecture blurb to the 'what is libinput' page
The vast majority of ppl reading the README is unlikely to care about this,
but they do care about the Wayland vs X.Org situation so let's split this up.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-27 09:35:00 +10:00
Peter Hutterer
3c72d5aba7 doc: we don't need the Namespaces doxygen page
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-26 14:42:13 +10:00
Peter Hutterer
d693eef563 doc: fix erroneous </dt>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-26 11:42:49 +10:00
Peter Hutterer
3ef67e69d1 doc: fix the url where to file a new bug 2018-07-26 09:10:55 +10:00
Peter Hutterer
658147af59 doc: add a warning note that the reporting-bugs instructions do matter
And remove the paragraph below that states the same thing.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-26 09:07:59 +10:00
Peter Hutterer
ffc008e9de doc: point to libinput --version
This will fail pre 1.8 but oh well.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-26 09:05:02 +10:00
Peter Hutterer
0aaf42622f doc: replace a few <b> with markdown's **
At least where possible, doxygen doesn't parse lists starting with ** as
emphasized.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-26 09:04:40 +10:00
Peter Hutterer
2dfa4c5d38 doc: replace html lists with markdown ones
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-26 09:04:38 +10:00
Peter Hutterer
dc0c013b43 doc: reporting-bugs: use evemu-record as link text, not evemu
Because that's the tool we're using

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-26 09:04:36 +10:00
Peter Hutterer
80273c050e doc: single ` is enough for code highlighting
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-26 09:04:33 +10:00
Peter Hutterer
c1f010a6eb doc: indent all @note continuation lines
This isn't required by doxygen but for a potential switch to RTD/sphinx
(see #95) it helps having this set up correctly.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-26 09:04:31 +10:00
Peter Hutterer
1205c6bed7 doc: document the device quirks
Add some documentation for the most common quirks or at least the ones that
the user may eventually see or have to set. Drop the git commit hash into the
docs to make sure it's spelled out that the quirks are only valid for that
commit. Adding something with @include* requires the EXAMPLE_PATH to be set.

Doxygen doesn't parse markdown in @includedoc so we have to insert the commit
as normal HTML tag.

Related to https://gitlab.freedesktop.org/libinput/libinput/issues/87

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-25 15:43:23 +10:00
Peter Hutterer
68131bc936 doc: fix ref to device-quirks
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-24 15:46:55 +10:00
Peter Hutterer
e3a842a26d doc: replace <a href> links with the doxygen markdown equivalent
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-24 15:46:55 +10:00
Peter Hutterer
f4a253fb21 doc: replace <pre> with @verbatim
Be more consistent here

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-24 12:22:49 +10:00
Peter Hutterer
cb7b535c2f doc: add a section name to seats-overview
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-24 12:22:46 +10:00
Peter Hutterer
d5c0aed8a3 doc: add a section to the FAQs "is libinput required for Wayland"
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-19 11:39:35 +10:00
Peter Hutterer
c15cbe850a doc: move the "General" section to the "Developer" section
The info here is mostly developer-oriented, let's group this together.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-19 11:20:54 +10:00
Peter Hutterer
eb77684be0 doc: fix references to a trackpoint range in the FAQs
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-19 11:14:14 +10:00
Peter Hutterer
ca658c15af doc: break up the "what is libinput" page with two sections
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-19 11:14:14 +10:00
Peter Hutterer
e6cad92005 Rename data/ to quirks/
A better, less ambiguous name than just "datadir"

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-13 13:30:54 +10:00
Peter Hutterer
6511dca633 Merge branch 'wip/trackpoint-acceleration' 2018-07-12 16:48:49 +10:00
Peter Hutterer
deadbf35c4 doc: move the meson.build in as subdir()
Doing so means we can ditch the specific input list for doxygen and just copy
all files over into our builddir/doc/ subdir, then use that subdirectory as
input data.

This relies on meson putting a subdir() into a subdirectory in the build
directory. This isn't technically guaranteed but I also suspect that if meson
ever changes that, lots of other projects will break. Even in that case we
should build just fine since we now filter for *.h and *.dox and don't copy
any other doxygen-commented files into the builddir anyway.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-12 14:05:52 +10:00
Peter Hutterer
27f7a66de4 filter: add a trackpoint multiplier factor
Measuring the trackpoint range has not shown to be sufficient or precise
enough to be used as an ingredient for trackpoint acceleration. So let's just
switch back to a generic multiplier that we can apply to the input deltas do
undo any device-specific lack of scaling.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-11 16:04:59 +10:00
Peter Hutterer
831ce3c0d3 filter: replace the trackpoint accel with a velocity-based one
This gets rid of the trackpoint range propery that we've been parsing until
now and instead just opts for a basic curve with some deceleration for low
pressure. The speed range is taken from the touchpad and should be wide enough
for most trackpoints that fall within the expected range.

Trackpoints like the new ALPS ones need to be configured through a hwdb (this
part is currently missing).

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-11 16:04:59 +10:00
Peter Hutterer
529755e18f doc: add a subsection on how to use libinput record --autorestart
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-10 18:04:20 +10:00
Peter Hutterer
0125a06826 doc: libinput-measure is a section, not a subsection
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-10 18:04:15 +10:00
Peter Hutterer
ff15bfd99f doc: drop the git version into the documentation
The libinput/doc/latest is now built automatically from git, so it's good to
have a reference to show which commit it was being built from. Add a section
to the readme with git commit information that is replaced by meson.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-06 11:04:07 +10:00
Peter Hutterer
2192ec192c doc: add the switches page to a "other devices" category
It felt a bit lost at the bottom of the "pages" list.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-05 12:00:31 +10:00
Peter Hutterer
45e3218863 doc: build doxygen output into "Documentation"
Slightly more obvious than just "html". Main motivation here is that we want
to provide the documentation as artifact from GitLab's CI, so having it unzip
to something slightly more meaningful makes sense.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-05 10:29:50 +10:00
Peter Hutterer
e723398c14 tools: rename list-quirks to the more generic "quirks list"
Enables us to easily add more tools where needed and it is
more consistent with the existing tools.

The commands are now:
   libinput quirks list
   libinput quirks validate

Fixes https://gitlab.freedesktop.org/libinput/libinput/issues/66

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-07-03 15:16:59 +10:00
Peter Hutterer
3a1f3b754e doc: fix typo in pointer acceleration docs
Fixes https://gitlab.freedesktop.org/libinput/libinput/issues/69

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-06-27 21:03:50 +10:00
Peter Hutterer
18e397446f doc: update docs to use a .yml suffix for libinput recorded files
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-06-21 15:02:20 +10:00
Peter Hutterer
015d6f1535 doc: use @verbatim, not @code for shell commands
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-06-21 11:13:57 +10:00
Peter Hutterer
08dbfb94b5 doc: update docs to drop hwdb references
In favour of the device quirks system.

Fixes #55

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-06-21 11:13:30 +10:00
Peter Hutterer
30b9c929a6 doc: point to the gitlab ci file for a list of required packages
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-06-19 13:40:07 +10:00
Peter Hutterer
5792af9a5f Implement a quirks system to replace the udev property parsing
Previously, we had all extra device information ("This is an Apple Touchpad",
"This touchpad causes pointer jumps", etc.) in the udev hwdb. The problem with
the hwdb is that updating it is nontrivial for the average user and debugging
when things go wrong is even harder. Plus, the hwdb has a matching scheme that
is unpredictable unless one is familiar with the implementation.

This patch set moves the hwdb entries into .ini style text files, with a
simple line-based parser. A new libinput list-quirks tool can list the quirks
applied to any given device, in --verbose mode it prints all matches as they
apply or not apply.

The data files are currently unused by libinput, that comes in a later patch.
They're installed though, the defaults point to the /usr/share/libinput
directory and for *temporary* local overrides the single file
/etc/libinput/local-overrides.quirks.

Failure to parse any file is a hard failure for the quirks system, but if the
local override file doesn't exist that's fine.

THIS IS NOT A CONFIGURATION INTERFACE! None of these settings are exposed via
the libinput_device_config_* calls. There is no API guarantee for these files,
think of them as source code.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-06-08 14:33:35 +10:00