Masquer la barre de titre en cas d'agrandissement dans GNOME 3.16

10

Dans GNOME 3.14 et 3.12, j'ai eu une modification dans metacity-theme-3.xmllaquelle masque la barre de titre de n'importe quelle fenêtre lorsqu'elle est agrandie. J'ai préféré cette méthode à l' extension Maximus Two car le comportement de l'extension est incohérent où parfois je voyais une barre transparente à la place de la barre de titre sur les fenêtres maximisées (généralement après la reprise d'une suspension).

Maintenant, dans GNOME 3.16, le metacitytweak ne fonctionne plus car GNOME ne l'utilise plus. J'ai essayé des CSS gtk3 personnalisés tels que:

.maximized .titlebar {
    display: none;
}

et des variations de cela, en vain. Est-ce possible de le faire via css personnalisé gtk-3?

Mise à jour : Pixel Saver est une bonne extension pour le faire sans aucun bogue, mais je voudrais toujours savoir s'il existe un moyen de le faire manuellement.

Sir_FZ
la source
Où est votre CSS personnalisé?
AB
Je l'ai placé dedans ~/.config/gtk-3.0/gtk.css. Je sais que cela fonctionne parce que changer la couleur du texte, par exemple, fonctionne, mais masquer la barre de titre (comme j'ai essayé dans ma question) ne fonctionne pas.
Sir_FZ

Réponses:

2

Pour comprendre pourquoi le réglage du thème de la métacité ne fonctionne plus, nous devons regarder le blog gnome lui-même où développeur gnome où Florian Müllner explique que lors du dessin des barres de titre, gnome n'utilise plus du tout la métacité et ils sont toujours dessinés par Gtk +

Cela signifie qu'une réponse CSS est la seule qui fonctionnera et je pense que vous êtes la plupart du temps là-bas. J'ai lu sur cette page de validation que le CSS que vous voulez est un peu comme ceci:

.maximized .header-bar.default-decoration {
  padding: 0;
  font-size: 0.7em;
}

.maximized .header-bar.default-decoration .button.titlebutton {
  padding: 0;
  border-width: 0;
}

La raison pour laquelle le CSS ne peut pas masquer ou supprimer l'élément comme il le peut avec du HTML (ou SVG) est que le CSS s'applique aux propriétés GTK et la visibilité d'un objet n'est pas une propriété de la manière typique GTK. Vous devez en fait appeler widget.hide () à partir du code. Similaire à la façon dont les thèmes Gimp doivent masquer les widgets en leur donnant la même couleur que l'arrière-plan comme un hack.

Martin Owens -doctormo-
la source
Donc, la réponse est qu'il n'est pas possible de se cacher avec du CSS pur?
Sir_FZ
1
c'est vrai, le css de gtk est assez pauvre.
Martin Owens -doctormo-
Vous semblez avoir raison, visible et masquer ne sont pas disponibles. Ma solution de contournement temporaire consiste à utiliser toujours GtkParasite (alias GtkInspector) pour masquer la barre d'en-tête.
Peter Weber