# [xorg-server-1.5] touchpad a scoppio ritardato

## cloc3

se il touchpad non funzionasse sarebbe meglio (ci sono post che dicono cosa fare).

invece è anche peggio.

al primo ingresso (autologin) il touchpad permette di spostare il puntatore del mouse, ma non risponde al tap (si dice così?). Se, dopo aver atteso il completo caricamento del sistema grafico, batto un ctrl-alt-del, ottengo un riavvio di X corretto con un touchpad attivo al 100%.

hal parte correttamente prima di xdm. anzi, ho già provato ad anticiparlo alla fase di boot e, adirittura, a farlo ripartire due volte (boot e default), ma ciccia.

non ho idea di dove cercare il problema.

----------

## MajinJoko

Per prima cosa, potresti lanciare 

```
synclient -l
```

 sia la prima volta (quella dell'autologin), sia la seconda (quando riavii e funziona correttamente). Così intanto puoi vedere se effettivamente qualcosa viene impostato diversamente (ad esempio nelle voci contenenti "tap").

Male che vada, come soluzione brutale (e "brutale" è dir poco), potresti crearti lo script tipo

```
synclient attributo1=valore1 attributo2=valore2 etc
```

 e metterlo nei programmi di autoavvio in gnome, kde o quello che usi.

Personalmente, con hal al livello boot sono andato incontro a problemi con l'acpi.

Controllato nel log di xorg se c'é qualcosa di anomalo?

----------

## cloc3

 *MajinJoko wrote:*   

> 
> 
> ```
> synclient -l
> ```
> ...

 

ottima idea. ma purtroppo:

```

cloc3@gentoo-live:~$ diff synclient-meno-elle1.txt synclient-meno-elle2.txt 

cloc3@gentoo-live:~$ 

```

il mio problema dovrebbe essere questo:

```

cloc3@gentoo-live:~$ grep Unload /var/log/Xorg.0.log.old |grep synaptics

(II) UnloadModule: "synaptics"

```

edit: invece no. questa è solo una nubbiata. ho scoperto in seguito che l'unload avviene, in modo corretto, durante la fase di chiusura del processo X.

ovviamente questa riga non compare nel file senza estensione .old. ma vattelapesca del perché faccia così.

nel frattempo, posto il mio file di configurazione di synaptics:

```

<?xml version="1.0" encoding="ISO-8859-1"?>                                                                                             

<deviceinfo version="0.2">                                                                                                              

  <device>                                                                                                                              

    <match key="info.capabilities" contains="input.touchpad">

        <merge key="input.x11_driver" type="string">synaptics</merge>

   <merge key="input.x11_options.SHMConfig" type="string">true</merge> 

   <merge key="input.x11_options.TapButton1" type="string">1</merge>

   <merge key="input.x11_options.TapButton2" type="string">2</merge>

   <merge key="input.x11_options.TapButton3" type="string">3</merge>

   <merge key="input.x11_options.VertTwoFingerScroll" type="string">true</merge>

   <merge key="input.x11_options.HorizTwoFingerScroll" type="string">true</merge>

   <merge key="input.x11_options.VertEdgeScroll" type="string">true</merge>

   <merge key="input.x11_options.HorizEdgeScroll" type="string">true</merge>

   <merge key="input.x11_options.AccelFactor" type="string">0.055</merge>

      </match>

  </device>

</deviceinfo>

```

----------

## MajinJoko

Il tuo file di configurazione, per come la vedo io, è corretto. Quando l'altro giorno ho fatto l'aggiornamento ho ravanato un pò in quello che uso io, non mi sembra davvero che il tuo abbia qualcosa di anomalo. Ma anche se fosse, come potrebbe causare l'unload del modulo synaptic?

Provare con quella flag nello xorg.conf che disabilita hal, per vedere solamente se a smontare il modulo è hal o qualcosa in Xorg?

----------

## Elbryan

Quando fai modifiche al file di configurazione di HAL devi sempre riavviare il demone poi. Questo lo dico perché ogni tanto capita di fare errori simili.

Una cosa che puoi fare è spulciarti l'output di lshal.

Per esempio (nel mio caso) il file di configurazione nelle policy fdi di hal è:

```

 <match key="info.capabilities" contains="input.touchpad">

      <match key="info.product" contains="appletouch">

   <merge key="input.x11_driver" type="string">synaptics</merge>

        ...

        ...

```

Se noti ho due match per impostare precisamente il touchpad.

L'output di lshal è:

```

udi = '/org/freedesktop/Hal/devices/usb_device_5ac_22a_noserial_if1_logicaldev_input'

  info.capabilities = {'input', 'input.touchpad'} (string list)

  info.category = 'input'  (string)

  info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_22a_noserial_if1'  (string)

  info.product = 'appletouch'  (string)

  info.subsystem = 'input'  (string)

  info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_22a_noserial_if1_logicaldev_input'  (string)

  input.device = '/dev/input/event9'  (string)

  input.originating_device = '/org/freedesktop/Hal/devices/usb_device_5ac_22a_noserial_if1'  (string)

  input.product = 'appletouch'  (string)

  input.x11_driver = 'synaptics'  (string)

  input.x11_options.BottomEdge = '310'  (string)

  ...

  ...

```

Magari può essere questo il problema. Non so.. la butto lì  :Smile: 

Ah ovviamente per utilizzare le cose così, devi avere la flag HAL abilitata praticamente system wide e nel make.conf INPUT_DEVICES="keyboard mouse synaptics evdev".

----------

## cloc3

a quanto pare non c'è niente da fare.

oggi però ho fatto alcune osservazioni che riporto, nella speranza di aggiungere qualche indizio:

1. il touchpad non si avvia semplicemente rilanciando X. bisogna prima provare ad utilizzare il touchpad, eseguendo almeno un clic di prova. come se fosse necessaria una sorta di innesco.

2. questa osservazione è compatibile con una affermazione trovata su wiki gentoo

3. ho trovato questa proposta di patch relativa al mio touchpad specifico (aspire one), ma non mi è stata di grande aiuto nel mio caso.

4. rabbia: tutto questo succede solo se uso la mia chiavetta gentoo. lanciando il mio aspire con una chiavetta debian (vecchiotta) o con il sistema originale linpus fila tutto liscio

mi sto chiedendo se non esista un modo per eseguire un finto clic di innesco via software prima di avviare X, ma ancora non saprei dove toccare.

----------

## Ic3M4n

scusa... hai trovato una soluzione? più o meno credo di essere nella stessa situazione.

----------

## Ic3M4n

ok, io ho risolto. stranamente ho scoperto che all'avvio di gdm il touchpad funzionava correttamente ed all'interno di gnome (2.2 :Cool:  no. 

quindi ho aperto la tab del mouse ed ho scoperto che hanno aggiunto una simpatica tab "touchpad". bastava abilitare le cose da li   :Very Happy:  in pratica con shm ad on gnome sovrascrive le impostazioni.

----------

## riverdragon

@iceman: io ho aperto il bug 287230 sullo stesso problema (non avevo capito che fosse lo stesso), fai anche tu le prove che ho indicato e dimmi se da te è diverso, per favore. Poi scrivi qualcosa per smuovere un po' il bug, chissà che qualcuno non risponda!

----------

## Ic3M4n

in effetti la prima cosa che ho fatto è stata disabilitare SHM nel file di conf di hal. Ho provato a dare un occhio in gconf per vedere se magari c'è qualche parametro nascosto (all'interfaccia grafica) ma nulla da fare. Credo che il bug su bugs.gentoo.org purtroppo non serva a nulla, l'unica cosa che potrebbero decidere di fare è non stabilizzare quella versione di gnome-control-center in favore di altre. 

Alternativa potrebbe essere compilare il pacchetto senza la flag use hal. teoricamente dovrebbe ignorare le periferiche.

----------

## riverdragon

No, compilare gnome-control-center senza hal non porta alcuna differenza. Da te cambia qualcosa?

----------

