Desativar Gestos Multitouch Unity (Unity 7.3.3, Ubuntu 15.10)

2

Ainda não encontrei uma resposta para o Unity V7.3 + e / ou o Ubuntu 15+, será que ainda existem opções para desabilitá-las sem recompilar o Unity?

Eu tenho um monitor touchscreen, o Acer 232HL, não um touchpad.

De acordo com os comentários de aqui esta modificação no código fonte ainda é válida pelo menos até 7.2.2. Eu prefiro não recompilar a Unidade, mas se não houver outra maneira ...

Obrigado por dedicar seu tempo para ler isso.

    
por Keith 19.07.2016 / 20:56

1 resposta

0

Não foi possível encontrar outras opções. A única maneira que encontrei foi recompilar a Unidade. Pelo menos é direto.

O crédito vai para os caras aqui.

sudo apt-get build-dep unity
cd /tmp  #It can be done somewhere else, feel free to change the base location.
mkdir unity
cd unity
apt-get source unity

Agora, o arquivo que você está procurando é /tmp/unity/unity-7.3.2/plugins/unityshell/src/unityshell.cpp

Aqui estão as linhas que precisam ser comentadas. Acabei recompilando 7.3.2, eles começam na linha 4086.

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();
  */
}

Reconstruir unidade:

cd /tmp/unity/unity-7.3.2
dpkg-buildpackage -us -uc -nc
cd ..
sudo dpkg -i *deb

Reinicie.

Finalmente, arquive uma solicitação de recurso para ter isso como uma opção de configuração em algum lugar.

    
por Keith 21.07.2016 / 16:11