8 ms·
Honestly the write up seems ok but does not evoke optimism to me. I can't help it but to me macOS and it's multifinger gesture support is not about how many ges
by thinkbud 6y ago
Honestly the write up seems ok but does not evoke optimism to me. I can't help it but to me macOS and it's multifinger gesture support is not about how many gestures it supports or which actions it supports, but the fluidity of the execution of gestures with animations.
When you start pinching/unpinching fingers apart, the zoom happens in sync with your finger spacing. As soon as you start pinching, the application seems to receive with the event stream all the x and y coordinates so that pan and zoom can be done simultaneously in lockstep with the finger positions and spacing on the touch pad.
Similarly when you pull 2 or 3 fingers from the side to e.g. go back a page, the reveal animation starts, or an arrow appears, and you can change your mind mid gesture by reversing the finger movement and the animation feedback is helpful enough to tell you that indeed the gesture will be canceled.
I honestly hope that the developers interested in improving this in libinput and stack have the same understanding that gestures are not about recognizing the one-off side/pinch movement with a couple of fingers, but about low latency fluid interaction of fingers with visual animation feedback tightly coupled. The other (one-off) type of gestures where you swipe your three fingers to the left and then after a sampling interval the framework or stack receives a ThreeFingersLeft swipe event (with length or time or xy values) is IMO a very underwhelming experience.
- CountSessine 6y agoI’m a long time MBP user who’s switched to Linux on a thinkpad recently, after the butterfly switch debacle. I think the one gesture I used more than any other on my MBP was the 4-finger swipe left and right to switch workspaces. I would have a fullscreen iterm/tmux/vim session in each workspace - each tmux is a separate project with multiple panes and windows. I can't really bind a keyboard shortcut to switch workspaces because I have so many shortcuts already bound to tmux/vim/coc and other vim extensions, which is why it's so nice to be able to switch workspaces with a touchpad gesture. I could flip back and forth between workspaces effortlessly, without losing precious key shortcuts for development. It’s a fantastic dev setup. Fedora 32 seems to support this now! I don’t think that F31 did, but on F32 I can do the 4 finger swipe to switch workspaces, and on my thinkpad it works pretty much as smoothly and as interactively as it did on my MBP - swipe slowly and the screen slides following your fingers, change direction in the middle of the gesture and the screen slides back - the whole ‘stream input events and the screen is an extension of your fingers’ as you describe. The Linux desktop is getting a lot better. I don’t think I would ever have switched without Wayland and now they’re getting gestures right.
- jeffbee 6y agoThe 4-finger swipe is responsible for a huge number of family tech support calls. "Dad, all my windows are gone again!". Pretty much a constant theme.
- fragmede 6y agoWhy not turn it off for them then?
- jeffbee 6y agoIt turns out that kids like to go into settings and click every button and change every thing. I don't really mind. I pretend they are learning something about computers.
- azinman2 6y agoThey are! They’re exploring and being curious. This is one of the most important things to encourage. I’m so thankful my parents let me disassemble the VCR, computers, other people’s computers, etc. I did end up learning a lot and the curiosity has served me well.
- sitkack 6y agoImagine if there was an undo buffer for OS events and one could just say, "reset workspace" and boom, everything is fixed. PriorArt.
- tsar9x 6y agoIt worked on Fedora 31, but they did noticeably improvment in F32. If you are fun of Wayland I recommend to check Sway.
- ghostpepper 6y agoAs someone using sway on Arch, is there a way to get these gestures? Or is it something specific to Fedora?
- p12tic 6y agoPovilas from linked article here. The design of how libinput handles gestures is exactly like you describe - the application will get a Start event when a gesture is identified, an Update event when finger position change and an End event when the gesture completes. This will allow to implement the macOS gestures in the end. There are more complex details of course, but the basic point stands.
- CountSessine 6y agoHey thanks for all of your work on libinput. A lot of us Mac refugees are really happy to see how much better things are with the linux userspace now. You're making a lot of people very happy. Crystal-clear graphics with Wayland, great new hardware available from the two big linux-friendly laptop makers (Lenovo+Dell), great touchpad software support with libinput... it's a great time to be on desktop linux!
- p12tic 6y agoI think you should thank Peter Hutterer for his contributions to libinput. I'm just a random developer who loves complex problems and free software and was also interested in trying to improve Linux touchpad support :-)
- ghostpepper 6y agoThanks for responding directly. I had the same question in mind as the post you replied to, so I'm happy to hear the right goal is being set.
- 29athrowaway 6y agoI have experienced none of the fluidity you mentioned. The UI on macOS to me feels frustratingly slow compared to XFCE. I've tried to disable animations, reduce motion and all the tweaks that can make it a little bit faster, but it remains being unacceptably sluggish. And please abstain from downvoting unless you've at least tried XFCE and macOS enough in order to make an objective comparison.
- vertex-four 6y agoIt’s honestly pretty bad on their slower and/or older models - they’re pretty clearly developing for what their devs have, which is their higher-spec machines. If you go into an Apple Store some time and play with their higher-spec machines it’s pretty good.
- 29athrowaway 6y agoTrue. But what happens when you run XFCE in one of those higher spec machines? the advantage remains.
- renewiltord 6y agoPerhaps this is a UI preference difference. I like the animated views on OS X and the speed seems acceptable but there are definitely browser apps (like the Chase website) where things animate in slowly and I get frustrated. So perhaps we're just differently placed on the curve.
- vertex-four 6y agoDoes it? There's a limit to how "snappy" XFCE gets. I think this is the "animations vs no animations" argument, maybe - I like them as they give context to my actions, but I imagine some people don't.
- 29athrowaway 6y agoFor nice widget animations you can install a GTK engine/theme. There is a deluge of GTK themes you can choose from if that is your thing. There are many themes inspired on macOS if you are aiming for that kind of look. http://reddit.com/r/unixporn http://reddit.com/r/unixporn has a lot of that stuff. You can just go and grab someone else's configuration and apply it to your system. If you are aiming for window effects with no regards for performance, try Compiz. You can add as many window effects as you want.
- etaioinshrdlu 6y ago> As soon as you start pinching, the application seems to receive with the event stream all the x and y coordinates so that pan and zoom can be done simultaneously in lockstep with the finger positions and spacing on the touch pad. I just tried this in Preview, Safari, and Chrome and none seem to actually do this.
- renewiltord 6y agoHaha, very true. At one point there was this perfection in the Ubuntu desktop where I could do wonderful things like pick up a window with the pointer and do keyboard shortcuts to move workspaces and the window would travel with me and stuff like that. It felt so natural that I didn't realize I was doing it till one day I upgraded and it went away. I suspect it was some emergent property of the subsystems that wasn't specifically written for because I don't think it exists anymore. OS X is like that. So many of the gestures are so natural that you just do them without thinking and I only notice when they're gone.
- ghostpepper 6y agoAnother nice aspect of this gesture that is easy to overlook is used in the scenario where you have two workspaces available but you are trying to eg. swipe left (to move right) when you are already on the rightmost workspace. The contents of the screen will slide a few hundred pixels left, but since there is no workspace on the right to take their place, what slides in is just empty black space - which then immediately bounces back out and returns you to your screen. The existence of this behavior very clearly communicates to the user that their gesture was received correctly but cannot be successful for some reason - far more eloquent than any dialog box with printed words or any sound effect.
- ryandrake 6y agoNot just the fluidity of the gestures, but the overall resolution and responsiveness of the device. If I had to pick my top requirements for a trackpad, I'd pick: 1. Latency: If I drag my finger back and forth across the trackpad, I expect the mouse to match exactly where my finger is--not where it was 50+ms ago. 2. Resolution/Acceleration: I expect to be able to navigate my entire screen without lifting my finger and repositioning it. Further, I expect to be able to move the mouse one pixel by making a very small move on the trackpad (or by rolling my finger a little). After those "table stakes" items are solved, then let's talk about adding gestures.