Como obter o cursor ocupado perdido ao abrir o arquivo / aplicativo de volta?

1

Há um relatório de bug sobre isso no link , embora ultimamente eu tenha me inseguro se é realmente bug Nautilus ou não. Antes de instalar o Precise, testei-o instalando o PCManFM para ver se a abertura de arquivos a partir dele mostra o cursor ocupado enquanto espera, mas o cursor ocupado ainda não aparece.

O cursor ocupado funciona tanto no Oneiric quanto no Precise Live USB e, quanto mais cedo eu uso o Oneiric, ele também funcionou. Em seguida, instalei o Precise, deixando minha pasta pessoal sem formatação, mas o problema persiste. Eu também tentei remover as pastas e arquivos de configuração em minha pasta pessoal (na verdade movê-lo para uma pasta para que ele possa ser restaurado), fazer logout e logar novamente, mas o problema ainda está lá (Em Oneiric, eu criei um novo usuário para ver se é um problema de configuração, no entanto, sem sucesso também).

Assim, considerando que o cursor ocupado funciona na sessão ao vivo , existe alguma maneira de fazer o cursor ocupado funcionar normalmente no sistema instalado (como editar algumas configurações do sistema)? p>

Este é um problema comum ou ocorre apenas em hardware específico?

    
por Inoe 28.04.2012 / 12:08

3 respostas

4

Duas soluções possíveis para esse bug:

  • Instale o pacote "gdm" . O instalador perguntará qual é o seu gerenciador de login preferido, escolha "gdm" em vez de "lightdm".
  • Mantenha-se no lightdm, mas configure sua conta para não precisar digitar uma senha para efetuar login. Se a sua pasta pessoal estiver criptografada, sem sorte, isso não será possível. Caso contrário, ative a opção "login automático" na seção "contas do usuário" do painel de configurações do sistema.

Note que esta solução não é perfeita. Somente aplicativos GTK terão um cursor ocupado quando forem iniciados. O Qt e outros, como o VLC e o Libreoffice, ainda não o farão.

    
por user117899 01.01.2013 / 01:55
0

Apenas muito rapidamente, outra solução possível:

Verifique Índice de /doc/startup-notification-devel-0.12/examples e obtenha test-monitor.c ; modifique o arquivo para que ele corresponda:

...
//#include <config.h>
#ifndef SN_API_NOT_YET_FROZEN
#define SN_API_NOT_YET_FROZEN
#endif
#include <libsn/sn.h>
...
int
main (int argc, char **argv)
{
  Display *xdisplay;
  SnDisplay *display;
  SnMonitorContext *context;

  setbuf (stdout, NULL);

  xdisplay = XOpenDisplay (NULL);
...

Construa com:

sudo apt-get install libstartup-notification0-dev
gcc -I/usr/include/startup-notification-1.0 test-monitor.c -o test-monitor -lX11 -lstartup-notification-1

Então:

$ sudo apt-get install python-osd
$ cat > osd.py <<"EOF" 
import pyosd # XOSD
import time
import sys
import os

# default_font="-*-helvetica-medium-r-normal-*-*-360-*-*-p-*-*-*"
# xlsfonts | less # to find fonts, say
# -misc-fixed-bold-r-normal--0-0-75-75-c-0-iso10646-1:
tfont="-*-fixed-bold-r-normal--*-*-100-*-c-*-*-*"
osd = pyosd.osd(font=tfont, colour='#FF0000', lines=3)
osd.set_align(pyosd.ALIGN_CENTER)
osd.set_pos(pyosd.POS_MID)
display = osd.display
osd.set_timeout(1)
# display will last as long the python program hasn't exited!
#display("Hello") 
#display(50, type=pyosd.TYPE_SLIDER, line=0) 

display("Hello from pyosd/XOSD", line=1)


# disable stdin buffering (ok on Python 2.7)
ttfo = os.fdopen(sys.stdin.fileno(), 'r', 0)

while 1:
  try:
    inline = ttfo.readline().rstrip()
  except KeyboardInterrupt:
    break
  if not inline:
    break
  print(inline)
  for ix in range(0,50):
    display(ix, type=pyosd.TYPE_PERCENT, line=0) 
    display(inline, line=1)
    display(ix, type=pyosd.TYPE_PERCENT, line=2) 
    time.sleep(0.02)
  time.sleep(1)
EOF

... e teste:

./test-monitor | stdbuf -oL grep description | python osd.py

Em /etc/lightdm/lightdm.conf add session-setup-script=/path/to/mylightdm-startup.sh ; e em mylightdm-startup.sh ':

SND=/path/to/folder
($SND/test-monitor | stdbuf -oL grep description | python $SND/osd.py) &

Isso deve fornecer uma notificação simples sobre a exibição na tela; outra (mais complicada) possibilidade é o uso de Ghosd - exibição na tela (OSD) com transparência (também aqui ).

    
por sdaau 05.05.2013 / 09:14
0

Este bug está presente se você usar o gerenciador de login lightdm. O bug é coorchestrated por lightdm, GDK3 e especificação do Xorg, e é mais detalhado em Launchpad bug # 1024482 .

Para consertá-lo, você precisa definir a variável GDK_CORE_DEVICE_EVENTS environmental, o que faz com que o GDK3 não use a chamada do Xorg com falha.

echo "GDK_CORE_DEVICE_EVENTS=true" | sudo tee ~lightdm/.pam_environment
    
por K3---rnc 09.02.2014 / 22:41