Solaar/docs
Daniel Banariba b4a8344533 ui: show pairing timeout and offer retry on failure
Three separate gaps around pairing failures:

The discovery phase had no visible time limit, so a pairing attempt that found
nothing just sat there until it gave up. Page 0 now carries a progress bar that
drains over the 30 seconds Solaar itself passes to discover() and set_lock().
It stops as soon as a device is found. The passkey page deliberately gets no
countdown: that timeout lives in the receiver's firmware and is never reported,
so any timer shown there would be invented.

The failure page ran gettext over a runtime value, which xgettext cannot
extract, so no pairing error was ever actually translated. The cause now comes
from literals matched exactly against the error labels that can reach the page,
which also lets each one say something useful. Bolt's "failed" in particular
used to land on "No further details are available about the error"; it now says
the sequence was not accepted, and admits that the receiver cannot tell which
buttons were pressed rather than guessing at a cause. The raw error token is
kept in a small line so bug reports still carry it.

Recovering from a failure meant closing the dialog and starting over from the
main window, so the page now offers a "Try again" button. It is packed into the
page rather than added as an assistant action widget, so the path stays usable
wherever the assistant is only duck-typed, and it is only built when a retry
callback was supplied.

The Bolt instructions also gained the long-press hint the command line already
had, and the passkey page a reminder to keep the device on and in range. The
labels added to both pages are bounded and centred so that they wrap inside the
existing dialog width instead of stretching it.
2026-08-13 16:57:00 -06:00
..
devices centurion: support PRO X 2 LIGHTSPEED headphones Centurion features (#3150) 2026-04-14 11:43:23 -04:00
img docs: Use mkdocs for public documentation (#2527) 2024-07-01 08:03:50 -04:00
screenshots docs: Move screenshots into dedicated folder 2024-05-16 15:55:44 -04:00
.gitignore pre-commit: initial fix 2020-07-07 15:11:15 +01:00
20121210110342697.pdf new UI mock-up from Julien Gascard 2012-12-12 21:45:37 +02:00
LICENSE.txt docs: update files shown in documentation 2025-10-23 09:28:52 -04:00
PRO_X2_SUPERSTRIKE_CLI.md device: Add PRO X 2 Superstrike mouse support with HITS tuning settings (#3132) 2026-04-12 09:53:47 -04:00
README.text docs: update files shown in documentation 2025-10-23 09:28:52 -04:00
capabilities.md docs: document haptic capability 2026-04-18 16:31:17 -04:00
debian.md cleanup and lint the docs 2020-08-02 11:25:00 -04:00
devices.md docs: mention Centurion protocol in documentation 2026-04-14 12:31:33 -04:00
features.md device: Add PRO X 2 Superstrike mouse support with HITS tuning settings (#3132) 2026-04-12 09:53:47 -04:00
hidpp-documentation.txt docs: remove logitech files and outdated information; update supported features 2020-07-11 15:36:49 -04:00
i18n.md po: add Irish translation (#3256) 2026-06-11 15:50:43 -04:00
implementation.md docs: improve documentation on onboard profiles 2025-03-29 09:22:59 -04:00
index.md docs: mention Centurion protocol in documentation 2026-04-18 16:31:17 -04:00
installation.md docs: document change to use uinput only 2026-03-08 20:58:43 -04:00
issues.md release 1.1.20rc2 2026-05-24 10:14:45 -04:00
rules.md docs: document change to use uinput only 2026-03-08 20:58:43 -04:00
uninstallation.md docs: give uninstallation file correct name 2025-09-08 13:28:39 -04:00
usage.md ui: show pairing timeout and offer retry on failure 2026-08-13 16:57:00 -06:00
usb.ids.txt docs: update the USB IDs list 2019-12-29 14:46:59 +00:00

README.text

# Documentation Readme

This project's documentation is hosted using GitHub pages, which serves static pages using Jekyll.
[Please refer to the official documentation for instructions for how to build the site locally.](https://help.github.com/articles/setting-up-your-github-pages-site-locally-with-jekyll/)