Comment empêcher les nouvelles fenêtres de voler le focus?

34

La situation typique est que je tape quelque chose (le pire des cas est mon mot de passe) dans une application, quand une autre application ouvre une fenêtre et vole le focus, donc mon frappe (mot de passe) passe à autre chose. Je voudrais éviter cela, du moins lorsque je tape activement quelque chose dans une zone d'édition. J'ai toujours vraiment détesté cela sous Windows, mais je n'ai jamais trouvé le moyen d'éviter cela. J'ai commencé à utiliser Ubuntu il y a quelque temps, et jusqu'à présent, j'étais capable de faire tout ce que je voulais, alors j'ai pensé que c'était peut-être aussi possible. Merci d'avance!

Imre Major
la source
4
Essayez de changer un paramètre avec la commande de terminal gsettings set org.gnome.desktop.wm.preferences focus-new-windows 'strict'. Faites-nous savoir si cela fonctionne dans votre cas. Pour rétablir les valeurs par défaut, donnez la commandegsettings reset org.gnome.desktop.wm.preferences focus-new-windows
vanadium
3
Merci. Avec cette modification, les nouvelles fenêtres apparaissent en arrière-plan, mais le focus est perdu. Ainsi, par exemple, je commence à taper sur le terminal et, en même temps, je lance une application avec des démarrages assez lents. Je clique sur l'application à gauche dans les favoris, puis je retourne à la fenêtre du terminal pour continuer à taper. Dans quelques secondes, l'application démarre, sa fenêtre est placée derrière la fenêtre du terminal (ce qui est bien), mais je perd le focus et je ne peux pas taper tant que je n'ai pas cliqué de nouveau sur la fenêtre du terminal.
Imre Major
Dommage que cela n'ait pas fonctionné complètement. Il reste quelque chose qui est difficile à contrôler. Malheureusement, de nombreuses questions connexes au fil des ans sont restées sans réponse.
vanadium
Ce n'est pas un bug, c'est une fonctionnalité! :( Une autre variante de ce qui affecte mon projet est que, lorsque mon application affiche une fenêtre contextuelle (utiliser yad) et que l'utilisateur clique n'importe où ailleurs, cette fenêtre contextuelle est automatiquement supprimée et toutes les suivantes de la même application ne retrouvent jamais le focus. , même quand ils sont au top! (La même chose se produirait si une autre application affichait une fenêtre comme dans votre cas.) ...
Joe
... Je ne l'ai pas encore essayé, mais je songe à écrire une autre petite application (que mon application principale peut démarrer en arrière-plan et s'arrêter par la suite lorsqu'elle n'en a plus besoin), qui reste en arrière-plan à la recherche de mon pop-ups et leur redonne le focus. Il semble être assez facile d'écrire avec bashet xdotool, mais beaucoup de choses semblent simples avant d'essayer de les mettre en œuvre. Il faudrait que vous sachiez à l'avance quelles fenêtres il recherchait. Ce n'est donc pas une solution générique à votre problème.
Joe

Réponses:

2

La meilleure recommandation que j'ai pour ce problème consiste à utiliser les options "Toujours visible" ou "Toujours au-dessous des autres fenêtres" pour la fenêtre dont vous avez besoin de rester (non) concentré. Faites un clic droit sur votre barre de titre et cochez cette option. Je peux promettre, cette fenêtre de toute façon, sera et / ou ne perdra pas le focus pour quoi que ce soit surgissant.

Vous pouvez également forcer certaines fenêtres à rester sur un espace de travail particulier. Vous pouvez également rediriger les applications qui ont des notifications fréquentes vers l'espace de travail 1, puis opérer à partir de l'espace de travail 2.

J. Cravens
la source