Google Chrome: sempre no topo do bug

13

Desculpe pelo título vago, mas este é difícil de explicar, então fique comigo por favor.

Estou usando o Windows Vista no trabalho para desenvolvimento da Web e, às vezes, quando clico ou Alt-Tab na janela de plano de fundo, a janela fica focada, mas ela não é trazida para a frente.

Para trazer a janela para a frente, eu tenho que clicar na borda dos aplicativos (quando o cursor de redimensionamento aparecer) e a janela pulará para a frente.

Eu tive esse problema por cerca de um ano e isso acontece pelo menos uma dúzia de vezes por dia, mas isso não acontece o tempo todo - parece aleatório.

Espero ter explicado o problema completamente (e você o tenha entendido) e aprecio quaisquer respostas ou comentários construtivos para resolver esse problema.

Example: If I Alt-Tab from Google Chrome to Notepad and this problem randomly occurs, Google Chrome will remain in front of Notepad, however, I will be able to type text into Notepad while the window is behind Google Chrome. Clicking on Notepad's content area will not bring it to the front but clicking it's window border will.

Exame de vídeo

link

Neste vídeo, cliquei do Google Chome para o UltraEdit e o Chrome permaneceu na fonte, mas, como você pode ver, ainda consigo digitar UltraEdit.

Estou começando a acreditar que isso poderia ser um bug no Google Chrome, então continuarei assistindo se isso acontecer entre outros aplicativos.

    
por GateKiller 28.01.2011 / 17:08

7 respostas

6

No caso do Chrome, esse é um problema conhecido: Comportamento sempre no topo da janela do Chrome

Uma solução rápida para esse problema é selecionar a janela do Google Chrome e pressionar F11 duas vezes.

    
por 31.01.2011 / 13:02
3

Como se parece?

Existe apenas um comportamento próximo a esse problema e esse seria o comportamento Sempre no topo .
Alguma parte do código, talvez do próprio programa, pode estar alterando a propriedade da sua janela ...

Como uma janela é definida como "Sempre visível"?

Como criar um formulário que permanece sempre no topo nos mostra que SetWindowPos é chamado com o segundo parâmetro definido como HWND_TOPMOST , isto imediatamente coloca-o no topo e mantém assim.

Depois de um rápido Google, esse resultado revela User32.dll para ser o proprietário desta função.

Quem define minha janela "Always On Top"?

Agora que temos o conhecimento de qual função é chamada, vamos querer saber quando essa função é chamada. Isso exigirá que façamos rastreamentos de pilha e os analisemos, enquanto o Windows Performance Toolkit pode fazer isso. muito feliz que Rohitab Batra tenha escrito o incrível Api Monitor .

Desculpe, mas esta é uma tarefa difícil:

  • Faça o download do Monitor de API e instale-o.
  • Abra o Monitor de API como administrador , se você tiver 64 bits, será necessário fazer isso duas vezes.
  • Verifique se nada está marcado no Filtro de Captura da API no lado esquerdo.
  • No mesmo lugar, altere Todos os Módulos na parte superior desse Diálogo para User32.dll .
  • Vá para

    Windows Application UI Development > Windows and Messages > Windows
    

    e depois

    User32.dll > SetWindowPos
    

Agora, você vai querer enganchar alguns processos. Palavra de cautela: Classifique por PID e não conecte em winlogon.exe ou qualquer coisa que tenha um PID mais baixo do que isso, se você fizer isso, você irá travar ou travar seu sistema. Você pode experimentar esse comportamento com outros processos também, mas é como uma tentativa e erro para ver quais você pode enganchar. Então:

  • Classifique por PID e anexe tudo que for mais recente que winlogon.exe .
  • Se tudo correr bem, você pode examinar os tópicos na caixa de diálogo Processo conectado .
  • Procure uma chamada de API com esta aparência:

    SetWindowPos (0x000000000002043c, HWND_BOTTOM | 0x00000000fffffffe , 0, 0, 0, 0, 0,
    SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE)

Uma chamada para SetWindowPos com HWND_BOTTOM | 0x00000000fffffffe ( -2 + 1 = -1 = HWND_TOPMOST ) é o que estamos procurando e o processo que faz esse chamado é o que você deve culpar pelo seu problema.

Eu desisto ... Como posso resolver meu problema "Always On Top"?

Combate o fogo com fogo, vamos definir todas as janelas para HWND_NOTOPMOST .

Gosta de programar! Mas, isso pode ser feito facilmente através de scripts também ...

Então, uma tarefa de lição de casa muito simples:

  • Faça o download AutoIt v3 .

  • Crie um arquivo ByeByeTopMost.au3 que contenha:

    While 1
        $var = WinList()
    
        For $i = 1 to $var[0][0]
            WinSetOnTop($var[$i][1], "", 0)
        Next
    
        Sleep(5000)
    WEnd
    
  • Coloque-o na sua pasta de inicialização e execute-o ou reinicie-o.

Ou se você não gosta do dever de casa, baixe este arquivo zip que eu fiz.

Divirta-se ...: -)

PS: Você não pode usar o recurso "Always On Top" neste último caso. Solucione problemas ou trabalhe ao redor ...; -)

    
por 31.01.2011 / 23:54
2

Para desabilitar isso você tem que acertar

ALT + espaço + C

Depois de pressionar esses botões, o navegador Google Chrome será fechado automaticamente. Em seguida, inicie novamente o navegador Google Chrome.

O problema será resolvido para sempre:)

    
por 09.01.2016 / 20:29
1

Também tem esse problema e descobre uma maneira de evitá-lo. Eu instalei o software "Always on Top" .

E eu uso no Chrome para Windows, que mudou o estado da propriedade alwaysontop .

    
por 30.07.2011 / 11:12
0

Uma solução rápida é clicar no botão "mostrar área de trabalho" duas vezes no lado direito da barra de tarefas no Windows 7/8 / 8.1

    
por 30.11.2014 / 15:09
0

Eu tive esse mesmo problema e consegui consertá-lo indo para "Mudar de Usuário" no menu Iniciar e depois de fazer o login novamente nas janelas, respeitei a barra de ferramentas novamente. Parecia afetar todas as janelas e enquanto o chrome poderia ser uma causa, definitivamente parecia afetar o sistema do Windows, sugerindo um possível culpado de dentro do próprio Windows. Fazendo este post depois da minha primeira corrida com o problema depois de ser um usuário do Google Chrome por 5 anos no Windows XP & 7.

    
por 01.10.2015 / 09:43
-3

Abra o Chrome e pressione ALT + Espaço + C

    
por 20.05.2015 / 15:12