可能是 Linux 下最丝滑的三指拖拽实现

2023-01-31 09:18:20 +08:00
 ferstar
转用 Linux 后一直都比较怀念 macOS 上丝滑的三指拖拽效果,鉴于近几年出的 Windows 本子触控板面积以及跟手性肉眼可见的改善了很多,我觉得是时候在 Linux 上再折腾一下触控板手势了

一番调研后东拼西凑缝合了一个 rust 实现(我菜求轻喷),效果不错,基本达到预期。

blog: https://blog.ferstar.org/post/issue-73/

repo: https://github.com/ferstar/gestures

理论上支持所有 Linux X11 桌面环境😁
6773 次点击
所在节点    Linux
46 条回复
duke807
2023-01-31 09:31:32 +08:00
linux 下默认:

n 指单击:
n = 1:鼠标左键单击
n = 2:鼠标右键单击,通常是打开右键菜单
n = 3:鼠标中键单击,通常是复制之前框选的内容

n 指单击,然后快速切换 1 指拖动:
n = 1:鼠标左键拖动,譬如移动文件
n = 2:鼠标右键拖动,譬如画图的时候平移画板
n = 3:鼠标中键拖动,譬如 3d 画图的时候旋转物件

n 指滑动:
n = 1:移动鼠标
n = 2:scroll 页面


以上设计比 mac 和 windows 专业且好用很多,好记且不缺失鼠标中键拖动的功能,用 linux 画 3d 我都不需要用鼠标,很方便

op 应该让 mac 和 windows 实现 linux 触摸板设计,而不是反过来
loading
2023-01-31 09:31:59 +08:00
感觉为 linux 生态添砖加瓦。
duke807
2023-01-31 09:37:22 +08:00
而且,linux 下窗口移动,可以拖拽整个窗口范围(按住 alt 或者 win 键),不需要慢慢移动鼠标去找窗口标题栏,所以默认鼠标左键拖动窗口就很好用,而且可以无感把窗口移动超出屏幕顶部,大大提高屏幕利用率。

只有 mac windows 不支持整个软件窗口范围点击拖动窗口的,才需要用所谓的各种手势来辅助。。。
ferstar
2023-01-31 09:40:42 +08:00
@duke807 你说的很对,但开发过程中遇到的问题是 1 ,2 指事件被系统绑定,不好捕获,所以退而求其次选择 3 ,4 指方案,这是个妥协的结果😂
swordne
2023-01-31 09:50:14 +08:00
同样喜欢 mac 的三指拖拽,不知道 win 上面有没有什么类似的驱动或者软件实现的?
现在一直在用 TP 的本子,就是因为不适应 win 自带的拖拽方案,退而求其次选择带独立鼠标键的。
ferstar
2023-01-31 09:55:20 +08:00
@swordne 同道中人呀,我找了 n 圈了没有😂
xuboying
2023-01-31 10:03:36 +08:00
我觉得 Mac 的三指拖拽非常非常好用。但是这个功能十分诡异
1. Windows 下完全找不到一样的实现,难道是 mac 的专利?
2. 这个功能被苹果自己雪藏了,默认不开启,必须在极其隐藏的地方打开。这是为啥呢。
novolunt
2023-01-31 10:11:31 +08:00
@xuboying 如果对于没有扩展屏幕的用户,完全没必要,触摸板体验也不好。三指拖拽可能在 mac 支持触摸屏以后才会默认开启。
debuggerx
2023-01-31 10:16:35 +08:00
之前在某个地方跟人讨论过这个三指拖拽,结果发现相当比例的人觉得这个好用是因为压根不知道还可以用“轻点一下半”的方式来拖动……
xuboying
2023-01-31 10:21:02 +08:00
@debuggerx 知道也还要三指,明显三指少磨损关节。
klesh
2023-01-31 10:23:26 +08:00
先 star 为敬
littlewing
2023-01-31 10:30:29 +08:00
为啥我的 macos 上没有三指拖动
zoharSoul
2023-01-31 10:32:53 +08:00
@littlewing 我甚至不知道是什么
20015jjw
2023-01-31 10:38:13 +08:00
看着不错
但老了还是 mac 屎少一点
duke807
2023-01-31 11:03:07 +08:00
@duke807 #1 补充一下,从来不需要按触摸板的实体按钮,我列的表是纯轻触
kaleido
2023-01-31 11:03:56 +08:00
@littlewing 系统设置——辅助功能——指针控制——触控板选项——拖移样式——三指拖移( macOS13 ,之前版本也类似)
zhuisui
2023-01-31 11:30:27 +08:00
单击或 n 击再按住拖动的问题是,多次单击之间可能点歪,这才是为什么 mac 的三指拖动好用,因为不存在点歪的问题。

以前我自己用 shell 写了一个读取 pointer dev 的三指拖动,但是很卡。现在我用 fusuma 带的三指拖动,非常流畅,不过相比 mac 的缺点就是,不能拿起其中一根手指。
zhuisui
2023-01-31 11:33:21 +08:00
另外,现在 mac 有了压感触控板,使得单指按住直接拖动也变得更好用,所以三指拖动对于有些人可能不再需要。而普通触控板需要物理按下触控板面,这个压力对于单指来说还是有点大。
neptuno
2023-01-31 11:39:35 +08:00
三指真的好用,轻点按住拖动太累了
swordne
2023-01-31 11:42:18 +08:00
@ferstar 是啊,不仅没有官方的,国内外也没有自行开发的,甚至个人项目都没有,可惜了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/911827

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX