Yowkees / keyball

keyball is split keyboard has 100% track ball
GNU General Public License v3.0
484 stars 334 forks source link

Scroll snap methods #559

Closed koron closed 2 months ago

koron commented 2 months ago

Current scroll snap supports only vertical. This is sufficient for many people, but is a bit inflexible

Problems are:

It is not realistic to use the rotation of the trackball to solve these problems. I tried such an experiment in the past, but it wasn't good.

Idea 1: how about using keys to switch the scroll snapping methods?

There are three mods:

  1. Vertical scroll snap
  2. Horizontal scroll snap
  3. Free scroll

You can switch/toggle between these modes with some keys. It is necessary to consider whether to keep the current behavior of transitioning to free scrolling when moving strongly to the opposite side while scroll snapping in one direction.

Idea 2: How about creating new customization points for the scroll snap algorithm?

For those who compile Keyball firmware themselves, we can provide a function with a weak attribute. By implementing the function, they can replace the existing scroll snap with their own.

related PR: #555

koron commented 2 months ago

Japanse Translation/ 日本語粗訳

現在のスクロールスナップには2つの問題がある

  1. 水平にスナップできない
  2. 自由スクロールするのに手間がかかる

この解決にボールの回転を利用するのは、過去の実験からほぼ無理筋だと考えている。 それを踏まえて、この問題を解決するのに個別の2つのアイデアがある。

1つ目はスナップ方法をキーで切り替えること。 トグルかモーメンタリかはわからないが キーで垂直スナップ、水平スナップ、自由スクロールを切り替えれば良いじゃん、Key & ballなんだから。 この場合、既存の大きく反対方向に動かすとスナップが解除される使用を残すかは要検討。

2つ目はボール回転をスクロールへ割り当ててる関数を、weakにしてオーバーライドできるようにする。 カスタマイズできるひとならそこで自由に書き換えられる。

koron commented 2 months ago

I'm implementing on #560

koron commented 2 months ago

560 is merged.