Google Chrome: bug toujours au top

15

Désolé pour le titre vague mais celui-ci est difficile à expliquer, alors soyez indulgent avec moi.

J'utilise Windows Vista au travail pour le développement Web et parfois lorsque je clique ou Alt-Tab vers la fenêtre d'arrière-plan, la fenêtre sera mise au point mais ne sera pas mise en avant.

Afin d'amener la fenêtre au premier plan, je dois cliquer sur la bordure des applications (lorsque le curseur de redimensionnement apparaît) et la fenêtre passera ensuite au premier plan.

J'ai ce problème depuis environ un an maintenant et cela se produit au moins une douzaine de fois par jour, mais il ne le fait pas tout le temps - semble aléatoire.

J'espère avoir bien expliqué le problème (et vous l'avez compris) et j'apprécierais toute réponse ou commentaire constructif pour résoudre ce problème.

Exemple: si je Alt-Tab de Google Chrome au Bloc-notes et que ce problème se produit au hasard, Google Chrome restera devant le Bloc-notes, cependant, je serai en mesure de taper du texte dans le Bloc-notes pendant que la fenêtre est derrière Google Chrome. Cliquer sur la zone de contenu du Bloc-notes ne l'amènera pas au premier plan, mais cliquer sur sa bordure de fenêtre le fera.

Vidéo Exampe

http://vimeo.com/19388998

Dans cette vidéo, j'ai cliqué de Google Chome vers UltraEdit et Chrome est resté dans la police, mais comme vous pouvez le voir, je peux toujours taper UltraEdit.

Je commence à croire que cela pourrait être un bogue dans Google Chrome, je vais donc continuer à regarder si cela entre d'autres applications.

GateKiller
la source
Pourriez-vous définir votre ordinateur à une résolution inférieure (HD 720p ou moins) et télécharger une vidéo qui montre le problème en utilisant Jing . De plus, essayez de désactiver les applications qui démarrent automatiquement avec Autoruns et ShellExView pour voir si un programme inactif ou une extension d'explorateur est à l'origine de ce comportement, faites attention à ce que vous désactivez cependant ...
Tamara Wijsman
Est-ce que cela se produit lorsque vous avez une certaine application ouverte devant vous et que vous essayez de modifier l'onglet à partir de cela? Il se peut que cette fenêtre ait été définie pour être toujours au sommet. J'ai eu ce problème pendant un petit moment lorsque ma fenêtre mIRC a été définie pour être toujours au sommet.
Windos
Je rencontre également ce problème (sous Windows 7). Bien que je ne connaisse pas exactement la nature du problème, je pense que cela se produit lorsque mon navigateur Web est ouvert et qu'il y a un contenu flash sur l'un des sites Web que j'ai ouverts. Cela dit, je n'arrive pas à le reproduire.
happy_soil
Maintenant que j'y pense, j'ai eu quelques programmes fonctionnant en arrière-plan qui sont définis comme "Always on Top", donc je pense que cela pourrait interférer avec la focalisation de la fenêtre.
happy_soil
@happy_soil: Vous pourriez mettre cela en place comme réponse. Une fenêtre "Always on Top" en cours d'exécution est une bonne explication de ce comportement.
harrymc

Réponses:

6

Dans le cas de Chrome, il s'agit d'un problème connu: comportement de la fenêtre Chrome en permanence

Une solution rapide à ce problème consiste à sélectionner la fenêtre Chrome et à appuyer deux fois sur F11.

harrymc
la source
Merci pour le lien avec ce bogue, cependant, ce n'est pas le problème que j'ai. Mon problème est lié aux fenêtres d'application et non à la barre des tâches. Je ne peux pas confirmer à ce stade si Chrome est à l'origine de ce problème ou non.
GateKiller
Je suis désolé si ce commentaire précédent vous a paru grossier. Ce n'était pas mon intention. J'apprécie votre contribution :)
GateKiller
Ce bogue affecte apparemment à la fois alt-tab et la barre des tâches. Le rapport de bogue initial était pour la barre des tâches, mais le commentaire 41 a également noté son effet sur alt-tab. (et votre commentaire n'a pas
semblé
Après une lecture plus approfondie et des tests, je conviens que Google Chrome pour Windows est effectivement le problème. J'ai ajouté des solutions de contournement à votre réponse pendant que nous attendons que Google corrige le problème.
GateKiller
1
Je suis sous Windows 10. Ce problème est toujours là et F11 ne fonctionne pas deux fois non plus.
Rosdi
4

À quoi cela ressemble-t-il?

Il n'y a qu'un seul comportement proche de ce problème et ce serait le comportement Always On Top .
Un morceau de code, peut-être du programme lui-même, pourrait changer la propriété de votre fenêtre ...

Comment une fenêtre doit-elle être "Always On Top"?

Comment créer un formulaire qui reste toujours en haut nous montre que SetWindowPos est appelé avec le deuxième paramètre défini sur HWND_TOPMOST , cela le place immédiatement en haut et le maintient de cette façon.

Après un rapide Google, ce résultat révèle que User32.dll est le propriétaire de cette fonction.

Qui définit ma fenêtre "Always On Top"?

Maintenant que nous savons quelle fonction est appelée, nous voulons savoir quand cette fonction est appelée. Cela nous obligera à faire des traces de pile et à les analyser, tandis que Windows Performance Toolkit peut le faire, nous pouvons être très heureux que Rohitab Batra ait écrit le génial Api Monitor .

Désolé, mais ce sont des devoirs difficiles:

  • Téléchargez API Monitor et installez-le.
  • Ouvrez API Monitor en tant qu'administrateur , si vous avez 64 bits, vous devez le faire deux fois.
  • Assurez-vous que rien n'est vérifié dans le filtre de capture d'API sur le côté gauche.
  • Au même endroit, remplacez tous les modules en haut de cette boîte de dialogue par User32.dll .
  • Aller à

    Windows Application UI Development > Windows and Messages > Windows
    

    puis

    User32.dll > SetWindowPos
    

Maintenant, vous voudrez accrocher certains processus. Avertissement: triez par PID et ne vous connectez pas à winlogon.exequoi que ce soit qui ait un PID inférieur, sinon, vous bloquerez ou planterez votre système. Vous pouvez également rencontrer ce problème avec d'autres processus, mais c'est un peu comme un essai et une erreur pour voir lesquels vous pouvez accrocher. Donc:

  • Trier par PID et accrocher tout ce qui est plus récent que winlogon.exe.
  • Si tout se passe bien, vous pouvez parcourir les fils de la boîte de dialogue Processus de raccordement.
  • Recherchez un appel d'API qui ressemble à ceci:

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

Un appel à SetWindowPos avec HWND_BOTTOM | 0x00000000fffffffe ( -2 + 1 = -1 = HWND_TOPMOST ) est ce que nous recherchons et le processus qui effectue cet appel est celui que vous devez blâmer pour votre problème.

J'abandonne ... Comment puis-je résoudre mon problème "Always On Top"?

Combattez le feu avec le feu, nous allons définir toutes les fenêtres sur HWND_NOTOPMOST .

Bonsoir, programmation! Mais, cela peut aussi être fait facilement grâce aux scripts ...

Donc, une tâche de devoirs très simple:

  • Téléchargez AutoIt v3 .

  • Créez un fichier ByeByeTopMost.au3 qui contient:

    While 1
        $var = WinList()
    
        For $i = 1 to $var[0][0]
            WinSetOnTop($var[$i][1], "", 0)
        Next
    
        Sleep(5000)
    WEnd
    
  • Placez-le dans votre dossier de démarrage et exécutez-le ou redémarrez.

Ou si vous n'aimez pas du tout les devoirs, téléchargez ce fichier zip que j'ai fait.

S'amuser... :-)

PS: vous ne pouvez pas utiliser la fonction "Always On Top" dans ce dernier cas. Dépannage ou solution de contournement ... ;-)

Tamara Wijsman
la source
J'aime cette réponse.
Supercereal
SetWindowPos ne se déclenche pas lorsque le problème se produit ... Je trouve également très choquant que vous renommiez complètement la question, puis que vous écriviez une réponse.
GateKiller
1
@GateKiller: Comment est-ce offensant? Cela vous aide à recevoir de meilleures réponses. C'est également une description plus appropriée de votre problème (car "fenêtres en face" est communément appelé "toujours au top") et maintenant vous avez changé votre titre en Google Chrome après avoir reçu des réponses . Quoi qu'il en soit, vous êtes toujours libre de revenir en arrière et je suis heureux que votre problème ait été résolu.En outre, SetWindowPos se déclencherait avant que le problème ne se produise ou une autre procédure similaire ayant le même effet pourrait être appelée ... :-)
Tamara Wijsman
4

Pour désactiver cela, vous devez appuyer sur

ALT + Espace + C

alt+ space+c

Après avoir appuyé sur ces boutons, le navigateur Google Chrome se fermera automatiquement. Redémarrez ensuite le navigateur Google Chrome.

Le problème sera résolu pour toujours :)

Firefog
la source
ALT + Space + C a fermé mon navigateur et résolu le problème. J'ai dû revenir ici pour voter favorablement sur votre réponse.
Oscar Fraxedas du
1
C'est la seule chose qui a résolu mon problème.
ddonche
1

Vous avez aussi ce problème et trouvez un moyen de le contourner. J'ai installé le logiciel "Always on Top" .

Et je l'utilise sur Chrome pour Windows, ce qui a changé l'état de la propriété alwaysontop.

Jaime Alves
la source
0

Une solution rapide consiste à cliquer deux fois sur le bouton «Afficher le bureau» sur le côté droit de la barre des tâches sous Windows 7/8 / 8.1

Vnay
la source
1
Telle qu'elle est écrite, votre réponse fournit très peu d'informations utiles. Pouvez-vous l'étendre un peu?
bwDraco
0

J'ai eu ce même problème et j'ai réussi à le résoudre en allant dans "Changer d'utilisateur" dans le menu Démarrer et après avoir ouvert une session dans les fenêtres, j'ai à nouveau respecté la barre d'outils. Il semblait affecter toutes les fenêtres et bien que le chrome puisse être une cause, il semblait définitivement affecter le système Windows, suggérant un coupable possible à partir de Windows lui-même. Faire ce post après ma première rencontre avec le problème après avoir été un utilisateur Chrome pendant 5 ans sur Windows XP et 7.

Leviscus Tempris
la source
0

Eh bien, j'ai eu le même problème, et appuyer deux fois sur F11 n'a rien résolu. Mais j'ai vu, puisque j'avais deux fenêtres Google Chrome ouvertes, qu'une seule d'entre elles était au-dessus de toutes les autres fenêtres que j'avais (Steam, Bloc-notes, etc.). J'ai ensuite pris l'un des onglets toujours en haut et créé une nouvelle fenêtre avec, puis j'ai pris tous les autres onglets de la fenêtre du haut vers la nouvelle. Maintenant, chaque fenêtre apparaît en haut lorsque je la sélectionne, comme d'habitude.

J'espère que cela peut vous aider :)

Heltsuki
la source
-3

Ouvrez Chrome et appuyez sur ALT + Espace + C

Gustavo
la source
3
L'OP ne demande pas comment fermer sa fenêtre Chrome.
Anthony Geoghegan