Estoy usando Backtrack 5. Como está basado en Ubuntu 10.04, decidí hacer mi pregunta aquí:
Tengo problemas para seleccionar texto con el mouse. Por ejemplo, cuando trato de cambiar el nombre de una carpeta, a veces puedo resaltar el texto con éxito, pero cuando suelto el botón del mouse, ya no está resaltado. A veces ni siquiera puedo resaltar con éxito la parte del texto que quiero. Resalta más o menos del texto que se seleccionó realmente.
Primero pensé que era un problema causado por mi mouse, sin embargo, probé con otro mouse y el problema continúa. Este problema realmente me molesta mientras navego por la red. ¿Podrías ayudarme?
Respuesta aceptada:
Posiblemente algo esté robando constantemente la selección X. Para saber quién es. Podrías compilar esto:
#include <stdio.h>
#include <X11/Xlib.h>
#include <X11/Xatom.h>
int main() {
printf("%#lx\n", XGetSelectionOwner (XOpenDisplay(0), XA_PRIMARY));
return 0;
}
Con:
gcc that-file.c -lX11
Ese código es para devolver el ID de ventana del propietario de PRIMARY
selección X. Entonces podrías usar xdotool
para obtener el PID del proceso que posee esa ventana (asumiendo que la ventana es de un cliente local y que le permite al administrador de ventanas conocer su PID):
ps -fp "$(xdotool getwindowpid "$(./a.out)")"
Si no tienes xdotool
, puede hacerlo de la manera difícil:puede buscar esa ID de ventana en la salida de xwininfo -root -all
:
xwininfo -root -all | less "+/$(./a.out)"
Es posible que la ventana que posee la selección no tenga un nombre, pero puede buscar en su padre o abuelo para obtener más pistas. Una vez que encuentre el ancestro administrado por el administrador de ventanas, puede obtener el ID del proceso (suponiendo que la ventana sea de un proceso local) con:
xprop -id that-id _NET_WM_PID
Ejemplo:
$ xwininfo -root -wm -tree | grep -B3 "$(./a.out)"
24 children:
0x2800024 "Sun 12 May - 21:40 - zsh (2)": ("xterm" "XTerm") 1920x1059+0+19 +0+19
1 child:
0x280002f (has no name): () 1920x1059+0+0 +0+19
0x280002f posee la selección PRIMARIA, cuyo padre es "xterm" (0x2800024 administrado por el Administrador de ventanas).
$ xprop -id 0x2800024 _NET_WM_PID
_NET_WM_PID(CARDINAL) = 9707
$ ps -fp 9707
UID PID PPID C STIME TTY TIME CMD
chazelas 9707 1 0 08:50 ? 00:00:02 xterm
Y ese es su pid.
Una vez que sepa a quién pertenece esa selección, puede quedar más claro lo que está sucediendo.
Relacionado:Linux – ¿Urxvt dibuja líneas lentamente?