Как я могу настроить Touchegg на Ubuntu 14.04

Как я могу настроить touchegg на Ubuntu 14.04 и использовать жесты вместо жестов Unity У меня Dell XPS L502x и трекпад Synaptics

3 ответа

Я нашел гораздо более простое решение: просто создайте файл ".xprofile" в вашей домашней папке со следующим содержимым:

synclient ClickFinger3=0
synclient TapButton3=0

touchegg &

Первые две строки нужны только если вы хотите использовать жесты тремя пальцами. Если вы пропустите их, touchegg будет распознавать жесты только 4 или более пальцами.

Или запустите следующую команду, которая делает то же самое:

echo "synclient ClickFinger3=0
synclient TapButton3=0

touchegg &" > ~/.xprofile

Tochegg также будет запускаться при каждой загрузке. Это работало для меня на Ubuntu 15.04 и Ubuntu Gnome 15.04 и должно работать на любой другой версии Ubuntu.

Я использую Ubuntu 14.04 и мне не нужно было вносить какие-либо изменения в Unity. Я помню последние версии Ubuntu, это был необходимый шаг.

Ниже видео, которое я сделал давным-давно; однако, как я уже сказал, я использую Ubuntu 14.04 и только что установил touchegg по этой ссылке (но не выполняю часть изменений Unity):

Мультитач-жесты в стиле OS X для Macbook Pro под управлением Ubuntu

А у меня дома сделал видео, показывающее, что оно отлично работает (даже пять пальцев это возможно). Конфигурационный файл touchegg находится в описании видео.

Ubuntu 12.10 Multi Gestures (Pt) - ссылка на учебное пособие на английском языке

Надеюсь, что это работает.

Вы не можете переопределить жесты Unity на 3 и 4 пальца просто так. Из Touchégg's FAQ

Unity оставляет за собой жесты с 3 и 4 жестами, которые не позволяют Touchégg использовать его.

В этом посте автор объясняет, как отключить встроенные жесты, изменяющие исходный код Unity. Написан для Ubuntu 12.10, но некоторые комментарии говорят, что он работает и на 14.04. Соответствующая часть для вашего вопроса (вставленная копия)

Мы получаем исходный код Unity со следующим:

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

Чтобы отключить встроенные мультитач-жесты, мы открываем файл /tmp/unity/unity-*/plugins/unityshell/src/unityshell.cpp с помощью текстового редактора (например, gedit или Sublime Text 2).

После того как мы найдем метод UnityScreen::InitGesturesSupport() (строка 3381 для Unity 6.10.0, строка 3287 для Unity 7.0.0), мы комментируем все строки, начинающиеся с gestures_.

Вот как это будет выглядеть:

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 пальцами.

Другим решением было бы получить другой рабочий стол.

Другие вопросы по тегам