Created by: viniciusbm
Closes #411 (closed). Closes #788.
This is a follow-up to #934 and #788.
I didn't use the set and get methods directly from Gesture because I tried to avoid unnecessary requests, which is possible because we can read and write options that share an offset in a single request.
@pfps, thank you for writing the code of #934 (upon which this PR is based). I retained your old commit, as I didn't know a good way to replace it with your updates after I made a lot of changes.
So far, I've only implemented the boolean settings. I tried to make the UI look better than that ugly hack I had written (#818), but it still has some alignment issues. The UI changes also apply to KEYBOARD_DISABLE_KEYS.
Of course, corrections and ideas are welcome.