elementary / switchboard-plug-mouse-touchpad

Switchboard Mouse & Touchpad Plug
GNU General Public License v3.0
24 stars 13 forks source link

TouchpadView: Use radios and checks #168

Closed danirabbit closed 3 years ago

danirabbit commented 3 years ago

Old & Busted

Screenshot from 2021-04-07 17 11 50

New Hotness

Screenshot from 2021-04-10 11 17 29

Someday with all my free time I will add little illustrations to these radios, but for now this gets all the options visible instead of hidden in dropdowns. #fuckdropdowns

also remove some dead code and do some code style stuff

cassidyjames commented 3 years ago

Hm, I'm mixed on this tbh. I am fine with pulling things out of comboboxes to show them right in the page, but this also makes the view look a lot more complicated and unbalanced at a glance. I liked the switches being more explicit with that feature being either on or off, and if it's on, being able to select the method; it feels weird that disabling a feature is just yet another option rather than an explicit on/off state. But I could probably be convinced of that one.

I almost wonder if we can/should put the radios on one (or two) lines to better use the horizontal space? We might also consider not having the pointer speed scale expand, and center-align the whole view.

I do like the Ignore stuff being pulled onto one line, those make sense—nice work. Also nice work with the code cleanup in general. :)

danirabbit commented 3 years ago

I'm actually conflicted on the value of even having "none" here. I can't think of a reason why you would want to completely remove the ability to scroll at all on the touchpad. So I actually wonder if we should hide those radios completely

I do want to follow up here with illustrations for the radios at some point and we've been doing those horizontally, so yeah should be fine to do that in this branch

hanaral commented 3 years ago

From an outsiders (and my own lol) perspective; what tf does 'none' mean? Like, I presume that it disables all physical clicking, but I'm not at all sure - maybe it needs some more specific wording OR the options that have none should have a regular tickbox that somehow indicates that the radios only get enabled when it is ticked

cassidyjames commented 3 years ago

@hanaral for physical clicking, it's actually more precisely "physical secondary-clicking", so it controls the method for "right click" when physically pressing the touchpad until it clicks (i.e. not just a tap): either pressing and clicking with two fingers on the touchpad (no matter where) is a right click, or pressing and clicking in the bottom-right corner of the touchpad is a right click (and pressing anywhere else is a left click). I agree it's kind of confusing, but being configurable is actually pretty important depending on the hardware and whether it has a hinged trackpad, printed areas on the touchpad, etc. The area-based clicking seems to be more popular on Windows hardware designed for business use, like ThinkPads.

cassidyjames commented 3 years ago

@danrabbit based on the few hundred people answering my poll on Twitter and Mastodon, nearly nobody disables touchpad scrolling; and I almost wonder if the 1% of those who responded actually disable the entire touchpad. So I do think that one would be safe to remove here.

danirabbit commented 3 years ago

@cassidyjames updated and included a new screenshot. Should we remove "none" from the clicking options as well?

hanaral commented 3 years ago

I mean keeping none in the clicking options could potentially even be dangerous - why are both 'enable tap to click' and physical clicking: 'none' available at the same time? Edit: And another thing, why is something as unhelpful as 'hardware default' a seperate option? Why not make the 'hardware default' option set by default to whatever it is and then putting '(hardware default)' next to its tag?

danirabbit commented 3 years ago

@hanaral tap to click always uses the multitouch method for secondary click. Turning off physical clicking doesn't disable tap to click

We don't get information from the backend about which option is implied by "hardware default". I think I agree that this is probably a pretty useless option to show in the UI since there's no way for us to know what it does and we have explicit options available instead

hanaral commented 3 years ago

Ok, but I still don't get it; can't the user still disable any form of primary clicking by turning off tap to click and then setting physical clicking to 'none'?

A final anecdote: I think that the combination of switches and radios is pretty good here, but now that there is a more level layout you might want to revisit the idea of centre-aligning the settings and replacing the unnecessarily large slider.

danirabbit commented 3 years ago

Yeah this probably needs to be renamed and maybe needs some hint text. The "physical clicking" setting only affects secondary clicking. You can't disable primary click without disabling the touchpad completely afaict