Problèmes et questions concernant l'édition XFCE.
Répondre

Possible d’avoir les fenêtres qui collent 1/3 au lieu de 1/2 écran ?

#1Messageil y a 4 ans

Salut,

Avec Manjaro XFCE, les fenêtres qui se collent sur les côtés s’auto-ajustent pour faire la moitié de l’écran, ce qui est bien pratique.

Est-il possible que au lieu de faire 50% gauche ou droite, ça fasse 33% (un tiers) ? L’idée étant d’avoir facilement et rapidement trois "colonnes", au lieu de deux.
2
administration/modération
Dernière modification par Erwanil y a 4 ans, modifié au total 1 fois.
Raison :code 2

Possible d’avoir les fenêtres qui collent 1/3 au lieu de 1/2 écran ?

#2Messageil y a 3 ans

Salut, 1/3 je ne pense pas. Mais 1/4 oui, une fois que la fenêtre est automatiquement redimensionnée à 50% il faut la faire glisser le long du bord de l'écran et elle se redimensionnera en 1/4.
Image

Possible d’avoir les fenêtres qui collent 1/3 au lieu de 1/2 écran ?

#3Messageil y a 3 ans

Hello je sais que tu peut le faire avec un autre WM tout en gardant xfce.

Après je ne sais pas si tu préfère rester sur le WM de base ou pas ( Les autres sont xmonad ou dwm )

Possible d’avoir les fenêtres qui collent 1/3 au lieu de 1/2 écran ?

#4Messageil y a 3 ans

:bjr:
Existe x-tile(aur) et le développement est toujours actif car il vient d'être porté en python 3 et gtk 3
https://www.giuspen.com/x-tile/

jamais testé ... apparemment existe des custom schémas donc je suppose que l'on doit pouvoir faire du 3 colonnes :saispas:

Possible d’avoir les fenêtres qui collent 1/3 au lieu de 1/2 écran ?

#5Messageil y a 3 ans

Je viens d'écrire (pour le fun) un petit script qui aligne nos fenêtres d'un bureau sur X colonnes
Il prend 2 paramètres optionnels : [nombre_de colonnes] [séparation]
Fonctionne que sous X11 ! et il est facile d'assigner un raccourci clavier au script

Attention: il ne traite que les colonnes :shock: et que aligné à gauche :pleure:
nécessite l'installation du paquet libwnck3
  • 2 colonnes avec une séparation de 50 pixels ./tilling 2 50
  • 3 colonnes sans séparation ./tilling 3 0 (si que 2 fenêtres alors aligne sur 2 colonnes, mais
    si on ne désire pas décrémenter automatiquement le nombre de colonne, alors il faut commander les 2 lignes

    #if len(wins) < columns:
    #    columns = len(wins)
    
  • si plus de fenêtres que de colonnes, alors il les ignore
  • Possible de travailler que avec la fenêtre active avec un troisième paramètre : tilling 2 20 -a

#!/usr/bin/env python
import sys
import gi
try:
    gi.require_version('Wnck', '3.0')           # libwnck3 package
    from gi.repository import Wnck as wnck      # x11 lib
except ValueError:
    print("Error: install libwnck3 : sudo pacman -S libwnck3")
    sys.exit(4)

screen = wnck.Screen.get_default()
screen.force_update()
workspace = screen.get_active_workspace()

columns = 3
sep = 12
getactif = False
if len(sys.argv) > 1:
    try:
        columns = int(sys.argv[1])
    except ValueError:
        pass
if len(sys.argv) > 2:
    try:
        sep = int(sys.argv[2])
    except ValueError:
        pass        
if len(sys.argv) > 3:
    try:
        getactif = sys.argv[3] == "-a"
    except ValueError:
        pass

wins = screen.get_windows()
wins = [w for w in screen.get_windows() if w.get_window_type() == wnck.WindowType.NORMAL and w.is_in_viewport(workspace)]

if len(wins) < columns:
    columns = len(wins)

print(f"\nretaille en {columns} colonnes")
w = (workspace.get_width() - (sep * (columns+1))) / columns
h = workspace.get_height() - (sep * 2)
y = sep
x = sep
mask = wnck.WindowMoveResizeMask(15)
if not getactif:
    for i, win in enumerate(wins):
        if i == columns:
            break
        win.set_geometry(0, mask, x, y, w, h)
        x = x + w + sep
else:
    win = screen.get_active_window()
    if not win:
        sys.exit(3)
    win.set_geometry(0, mask, x, y, w, h)
    sys.exit(0)

./tilling 3 20 : Image
Répondre