web-dev-qa-db-ja.com

Ubuntu 14.04でToucheggを構成するにはどうすればよいですか

ubuntu 14.04でtoucheggを設定し、統一ジェスチャーの代わりにジェスチャーを使用するにはどうすればよいですか?Dell XPS L502xとシナプストラックパッド

4
abahnasy

私は、はるかに簡単な解決策を見つけました。次の内容のファイル「.xprofile」をホームフォルダーに作成するだけです。

synclient ClickFinger3=0
synclient TapButton3=0

touchegg &

最初の2行は、3本の指でジェスチャーを使用する場合にのみ必要です。除外した場合、toucheggは4本以上の指でジェスチャーを認識します。

または、同じことを行う次のコマンドを実行します。

echo "synclient ClickFinger3=0
synclient TapButton3=0

touchegg &" > ~/.xprofile

Tocheggは起動時にも起動します。これはUbuntu 15.04とUbuntu Gnome 15.04で機能し、他のUbuntuバージョンでも機能するはずです。

7
Lorenz

Ubuntu 14.04を使用していますが、Unityで変更を加える必要はありませんでした。 Ubuntuの最後のバージョンは必要なステップだったことを覚えています。

ずっと前にやったビデオの下。しかし、私が言ったように、私はUbuntu 14.04を使用し、このリンクに続いてtoucheggをインストールしました(ただし、Unityの変更部分は行いません):

buntuを実行しているMacbook ProのOS Xのようなマルチタッチジェスチャ

そして、私の家はそれがうまくいくことを示すビデオを作りました(5本の指でも可能です)。 touchegg構成ファイルはビデオの説明にあります。

buntu 12.10マルチジェスチャ(Pt)-英語のチュートリアルリンク

それがうまくいくことを願っています。

1
Douglas Galetti

Unityの3本指と4本指のジェスチャーをそのようにオーバーライドすることはできません。 TouchéggのFAQ から

Unityは、Touchéggがそれを利用することを不可能にする3つまたは4つのジェスチャで、ジェスチャを予約します。

この投稿 で、著者はUnityのソースコードを変更するbuid-inジェスチャーを無効にする方法を説明します。 Ubuntu 12.10用に書かれていますが、14.04でも機能するとコメントするコメントもあります。質問に関連する部分は(コピーアンドペースト)です

Unityのソースコードは次のようにして入手します。

Sudo apt-get build-dep unity
cd /tmp
mkdir unity
cd unity
apt-get source unity

組み込みのマルチタッチジェスチャを無効にするには、テキストエディター(geditやSublime Text 2など)でファイル/tmp/unity/unity-*/plugins/unityshell/src/unityshell.cppを開きます。

メソッドUnityScreen::InitGesturesSupport()(Unity 6.10.0の場合は3381行、Unity 7.0.0の場合は3287行)を見つけた後、ジェスチャーで始まるすべての行をコメントします_。

これは次のようになります。

void UnityScreen::InitGesturesSupport()
{
  std::unique_ptr<nux::GestureBroker> gesture_broker(new UnityGestureBroker);
  wt->GetWindowCompositor().SetGestureBroker(std::move(gesture_broker));
  /*
  gestures_sub_launcher_.reset(new nux::GesturesSubscription);
  gestures_sub_launcher_->SetGestureClasses(nux::DRAG_GESTURE);
  gestures_sub_launcher_->SetNumTouches(4);
  gestures_sub_launcher_->SetWindowId(GDK_ROOT_WINDOW());
  gestures_sub_launcher_->Activate();

  gestures_sub_dash_.reset(new nux::GesturesSubscription);
  gestures_sub_dash_->SetGestureClasses(nux::TAP_GESTURE);
  gestures_sub_dash_->SetNumTouches(4);
  gestures_sub_dash_->SetWindowId(GDK_ROOT_WINDOW());
  gestures_sub_dash_->Activate();

  gestures_sub_windows_.reset(new nux::GesturesSubscription);
  gestures_sub_windows_->SetGestureClasses(nux::TOUCH_GESTURE
                                         | nux::DRAG_GESTURE
                                         | nux::PINCH_GESTURE);
  gestures_sub_windows_->SetNumTouches(3);
  gestures_sub_windows_->SetWindowId(GDK_ROOT_WINDOW());
  gestures_sub_windows_->Activate();
  */
}

Unity .debパッケージを再構築し、システムにインストールします。

cd /tmp/unity/unity-*
dpkg-buildpackage -us -uc -nc
cd ..
Sudo dpkg -i *deb
Sudo apt-get -f install
Sudo apt-get autoremove

オプションで、Unityパッケージへのアップグレードをブロックすることもできます。このように、アップグレードがリリースされるたびにパッチの手順を繰り返す必要はありません。ただし、重要なバグ修正を見逃す可能性があります。

以下は、Unityの更新をブロックします。

echo "unity hold"|Sudo dpkg --set-selections

ログアウトしてログインすると、Unity 3の指のドラッグジェスチャが(他の中でも)消えていることがわかります。

別の解決策は、異なるデスクトップを取得することです。

1
berbt