Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 20/05/2025, à 00:41

FBi16

[Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

Bonjour,
Ancien utilisateur de Kubuntu, je souhaite pouvoir mettre deux fenêtres côté à côté sous Lubuntu 24.04.
Je souhaite utiliser la combinaison de touche Windows + Gauche ou Droite pour mettre la fenêtre à gauche ou à droite de l'écran. D'ailleurs, je n'ai toujours pas trouvé comment le faire avec la souris...
Après quelques recherches sur le wiki d'Ubuntu, j'ai compris qu'il fallait configurer openbox.

Globalement, il faut configurer le fichier rc.xml. Plusieurs choix sont alors possibles mais aucun n'a donné de résultats sur mon PC.

1) Configuration manuelle du fichier rc.xml :
Le wiki d'Ubuntu n'est pas des plus clairs à ce sujet. Après lecture de la documentation d'OpenBox sur les raccourcis clavier, on voit bien qu'il faut ajouter des lignes dans rc.xml. En utilisant le fichier rc.xml de D.W. Armstrong, je copie le texte suivant dans mon fichier rc.xml. Je mets ce code dans la section keyboard. Cela donne :

<keyboard>
...
    <keybind key="W-Left">
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo">
        <x>0</x>
        <y>0</y>
        <width>50%</width>
        <height>100%</height>
      </action>
    </keybind>
    <keybind key="W-Right">
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo">
        <x>1/2</x>
        <y>0</y>
        <width>50%</width>
        <height>100%</height>
      </action>
    </keybind>
...
</keyboard>

Puis je lance la ligne de commande sur le terminal :

 openbox --reconfigure

J'ai beau appuyé sur Windows + Gauche ou Droite. Il ne se passe rien.

Par contre, je remplace W par A dans le code pour le fichier rc.xml. Et là, si je fais Alt+Gauche ou Droite, cela fonctionne parfaitement. Cela donne :

<keyboard>
...
    <keybind key="A-Left">
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo">
        <x>0</x>
        <y>0</y>
        <width>50%</width>
        <height>100%</height>
      </action>
    </keybind>
    <keybind key="A-Right">
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo">
        <x>1/2</x>
        <y>0</y>
        <width>50%</width>
        <height>100%</height>
      </action>
    </keybind>
...
</keyboard>

La touche windows/super de mon clavier n'est donc pas détectée par OpenBox. Par contre, quand j'appuie sur la touche Windows, le menu "démarrer" de Lubuntu s'affiche. Avez-vous des idées sur ce problème ?


=========================================
Pour plus creuser le sujet, j'ai essayé de modifier graphiquement les raccourcis. Sans succès...

2) Configuration via lxkeymap comme suggéré sur le wiki d'Ubuntu :
Le développement de lxkeymap semble être arrêté depuis Xenial. Le paquet n'est plus dans les dépôts. Je n'ai pas les connaissances pour l'installer à la main.

3) Configuration via obkey comme suggéré sur la section 3.6 du wiki d'Arch :
A noter, le wiki d'Arch donne pas mal d'informations sur Openbox (même s'il est plus aride à lire que celui d'Ubuntu).
Après pas mal de recherche, je trouve une version pour python 3. Mais quand je suis le tuto d'installation, j'ai notamment :

$ python3 obkey
/usr/bin/python3: can't find '__main__' module in '/home/FBi16/obkey'

4) Configuration avec lxhotkey:
Ce paquet est dans les dépôts. Mais quand je le lance :

$ lxhotkey -v
LXHotkey: Désolé, il n'est pas possible de configurer les raccourcis à distance.

Dernière modification par FBi16 (Le 26/05/2025, à 14:46)

Hors ligne

#2 Le 20/05/2025, à 07:21

xubu1957

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

Bonjour,

Pour info > Touche Windows + Flèche vers la gauche ou la droite, si tu peux adapter.


Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.                   Membre de Linux-Azur

Hors ligne

#3 Le 20/05/2025, à 14:18

FBi16

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

xubu1957 a écrit :

Bonjour,

Pour info > Touche Windows + Flèche vers la gauche ou la droite, si tu peux adapter.

Merci pour ce partage. Malheureusement, ce sujet concerne le gestionnaire de fenêtres Xfwm4 de Xubuntu et non OpenBox de Lubuntu.
OpenBox n'a pas, nativement, d'interface graphique pour configurer les touches.
Cela pourrait (peut-être) marcher si j'installe Xfwm4 sur Lubuntu. Dans ce cas, autant utiiser Xubuntu directement !

Hors ligne

#4 Le 20/05/2025, à 16:31

alduc31

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

Salut,

Ma conf openbox (fonctionnelle) :

<keybind key="W-Left">        # HalfLeftScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>5</x><y>40</y><height>95%</height><width>49%</width></action>
    </keybind>
    <keybind key="W-Right">        # HalfRightScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>-5</x><y>40</y><height>95%</height><width>49%</width></action>
    </keybind>
    <keybind key="W-Up">        # HalfUpperScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>0</y><width>100%</width><height>50%</height></action>
    </keybind>
    <keybind key="W-Down">        # HalfLowerScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>-0</y><width>100%</width><height>50%</height></action>
    </keybind>
    <keybind key="W-A-Left">        # HalfLeftScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>-0</y><height>50%</height><width>50%</width></action>
    </keybind>
    <keybind key="W-A-Right">        # HalfRightScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>-0</x><y>0</y><height>50%</height><width>50%</width></action>
    </keybind>
    <keybind key="W-A-Up">        # HalfUpperScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>0</y><width>50%</width><height>50%</height></action>
    </keybind>
    <keybind key="W-A-Down">        # HalfLowerScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>-0</x><y>-0</y><width>50%</width><height>50%</height></action>
    </keybind>
    <keybind key="W-F">
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo">
        <x>10</x>
        <y>100</y>
        <width>99%</width>
        <height>93%</height>
      </action>
    </keybind>

rc.xml => https://transfert.free.fr/TwQTm44


Asus Vivobook S5406MA  (Core Ultra 7 155H, 16Go, AX211)

Hors ligne

#5 Le 21/05/2025, à 00:20

FBi16

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

Merci alduc31 pour ton partage de ton fichier rc.xml. J'ai remplacé mon fichier rc.xml par le tien mais aucun raccourci avec la touche Windows ne fonctionne.
En cherchant un peu, je me suis tourné vers xbindkeys pour tester la touche windows.

Je lance xbindkeys -k sur le terminal et j'appuie sur Windows + n'importe quelle touche, il ne se passe rien :

ferreol@ferreol-latitude5480:~$ xbindkeys -k
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.

Si je fais ctrl+droite, j'obtiens bien :

"(Scheme function)"
    m:0x14 + c:114
    Control+Mod2 + Right

Par contre, ctrl+windows+droite :

ferreol@ferreol-latitude5480:~$ xbindkeys -k
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"(Scheme function)"
    m:0x54 + c:37
    Control+Mod2+Mod4 + Control_L

Enfin, ctrl+windows :

ferreol@ferreol-latitude5480:~$ xbindkeys -k
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"(Scheme function)"
    m:0x54 + c:133
    Control+Mod2+Mod4 + Super_L

Le problème ne semble donc pas venir d'openbox.
Est-ce la configuration du clavier qui n'est pas la bonne ? Ou ma touche windows ?

Hors ligne

#6 Le 21/05/2025, à 07:00

alduc31

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

En lançant xev et en appuyant sur la touche windows j'obtiens :

    state 0x40, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,

=> Super_L

Perso, je configure le clavier avec :

setxkbmap fr oss_latin9

Asus Vivobook S5406MA  (Core Ultra 7 155H, 16Go, AX211)

Hors ligne

#7 Le 22/05/2025, à 10:25

FBi16

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

J'ai fait :

setxkbmap fr oss_latin9

Si j'appuie et relache la touche Alt (par exemple) :

KeyPress event, serial 48, synthetic NO, window 0x3600001,
    root 0x4cc, subw 0x0, time 432462, (734,953), root:(736,979),
    state 0x10, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 48, synthetic NO, window 0x3600001,
    root 0x4cc, subw 0x0, time 434614, (734,953), root:(736,979),
    state 0x18, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

Si j'appuie et relache la touche Windows (le menu démarrer s'affiche et je suis focus dessus):

FocusOut event, serial 48, synthetic NO, window 0x3600001,
    mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 48, synthetic NO, window 0x3600001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 48, synthetic NO, window 0x0,
    keys:  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

FocusOut event, serial 48, synthetic NO, window 0x3600001,
    mode NotifyGrab, detail NotifyNonlinear

Hors ligne

#8 Le 22/05/2025, à 14:14

steph810

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

Bonjour,
remplace W par Super, j'ai adapter celui de @alduc31

<keybind key="Super-Left">        # HalfLeftScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>5</x><y>40</y><height>95%</height><width>49%</width></action>
    </keybind>
    <keybind key="Super-Right">        # HalfRightScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>-5</x><y>40</y><height>95%</height><width>49%</width></action>
    </keybind>
    <keybind key="Super-Up">        # HalfUpperScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>0</y><width>100%</width><height>50%</height></action>
    </keybind>
    <keybind key="Super-Down">        # HalfLowerScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>-0</y><width>100%</width><height>50%</height></action>
    </keybind>
    <keybind key="Super-A-Left">        # HalfLeftScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>-0</y><height>50%</height><width>50%</width></action>
    </keybind>
    <keybind key="Super-A-Right">        # HalfRightScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>-0</x><y>0</y><height>50%</height><width>50%</width></action>
    </keybind>
    <keybind key="Super-A-Up">        # HalfUpperScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>0</y><width>50%</width><height>50%</height></action>
    </keybind>
    <keybind key="Super-A-Down">        # HalfLowerScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>-0</x><y>-0</y><width>50%</width><height>50%</height></action>
    </keybind>
    <keybind key="Super-F">
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo">
        <x>10</x>
        <y>100</y>
        <width>99%</width>
        <height>93%</height>
      </action>
    </keybind>

Suivant votre version. Lisez les Change Log la 3.3.990 (3.4 preview release)
"W is no longer hard coded to Mod4. It is now a shortcut for Super, which is usually bound to Mod4. xmodmap will show your mapping.
"

Dernière modification par steph810 (Le 22/05/2025, à 14:21)

Hors ligne

#9 Le 22/05/2025, à 14:18

alduc31

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

Tu as dit :

steph810 a écrit :

Par contre, quand j'appuie sur la touche Windows, le menu "démarrer" de Lubuntu s'affiche.

C'est bien toujours le cas ?
Lubuntu doit remapper cette touche.

Peux-tu donner le retour de :

xmodmap -pm

stp ?

Normalement Super_L apparaît sur la ligne mod4.

Dernière modification par alduc31 (Le 22/05/2025, à 14:22)


Asus Vivobook S5406MA  (Core Ultra 7 155H, 16Go, AX211)

Hors ligne

#10 Le 22/05/2025, à 15:05

steph810

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

Oui, il y as juste 3 commande a taper pour etre sur de sa config.
exemple:

xmodmap -pm

setxkbmap -query

xkbprint -color ":0" - | ps2pdf - > clavier.pdf

key.gif

Hors ligne

#11 Le 22/05/2025, à 15:39

alduc31

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

La touche fait bien ouvrir le menu de Lubuntu ?
Il doit y avoir un remapping.

xmodmap -pke

Asus Vivobook S5406MA  (Core Ultra 7 155H, 16Go, AX211)

Hors ligne

#12 Le 22/05/2025, à 20:04

alduc31

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

Je viens d'essayer Lubuntu en live.
Dans le fichier $HOME/.config/lxqt/globalkeyshortcuts.conf, il y a :

[Super_L.33]
Comment=Show/hide main menu
Enabled=true
path=/panel/mainmenu/show_hide

Tu peux essayer de mettre false à Enabled ou de carrément supprimer cette partie.
Un redémarrage ou un logout/login pour tester.


Asus Vivobook S5406MA  (Core Ultra 7 155H, 16Go, AX211)

Hors ligne

#13 Le 23/05/2025, à 23:52

FBi16

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

J'ai testé toutes vos solutions :

1) Proposition 1 : Cela n'a rien changé.

steph810 a écrit :

Bonjour,
remplace W par Super [Dans rc.xml], j'ai adapter celui de @alduc31

2) Proposition 2 : La configuration du clavier semble bonne.

steph810 a écrit :

Oui, il y as juste 3 commande a taper pour etre sur de sa config.
exemple:

xmodmap -pm

setxkbmap -query

xkbprint -color ":0" - | ps2pdf - > clavier.pdf

Voilà ce que cela a donné chez moi :

ferreol@ferreol-latitude5480:~$ xmodmap -pm
xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Alt_L (0xcc),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3        ISO_Level5_Shift (0xcb)
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c)

Dans Clavier.pdf, la touche Windows est bien identifiée comme Super_L (n°133). Le clavier de Clavier.pdf est celui du Dell Latiture D620. Il est assez proche du clavier de mon ordinateur Dell Latitude 5480.

3) Aller dans ~/.config/lxqt/globalkeyshortcuts.conf et mettre false à la touche Super_L.
J'ai modifié le fichier de la manière suivante, puis j'ai redémarré Lubuntu.

[Super_L.34]
Comment=Show/hide main menu
Enabled=false
path=/panel/mainmenu/show_hide

Après redémarrage, quatre choses :
- Quand je clique sur la touche windows, il ne se passe rien.
- Quand je fais windows/super+gauche, la fenêtre se met bien à gauche. La touche windows active bien les actions du fichier rc.xml. Merci pour votre aide.
- Pour <keybind key="W-Left"> ou <keybind key="Super-Left"> dans rc.xml, la fenêtre se met bien à gauche. C'est donc bien l'ouverture du mainmenu qui bloquait l'execution du script d'openbox.
- En utilisant sur xev dans le terminal et en appuyant sur la touche windows, j'obtiens bien :

state 0x10, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,

=====
Par contre : Que faut-il écrire dans rc.xml pour que la touche windows ouvre le menu "démarrer"/mainmenu de Lubuntu ?
Je suis le seul à avoir ce problème sur mon ordinateur ?

Hors ligne

#14 Le 26/05/2025, à 09:56

alduc31

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

Si la touche W déclenche le menu, on ne pourra pas avoir W+<autre touche> puisque dès qu'on appuie sur W on a le menu.
Faut utiliser une autre touche pour les HalfScreen (Alt par exemple).


Asus Vivobook S5406MA  (Core Ultra 7 155H, 16Go, AX211)

Hors ligne

#15 Le 26/05/2025, à 12:00

steph810

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

alduc31 a écrit :

Si la touche W déclenche le menu, on ne pourra pas avoir W+<autre touche> puisque dès qu'on appuie sur W on a le menu.
Faut utiliser une autre touche pour les HalfScreen (Alt par exemple).

Oui pour cela moi sur i3 j'utilise uniquement la touche Alt

Hors ligne

#16 Le 26/05/2025, à 14:59

FBi16

Re : [Résolu] OpenBox : Touche Windows/Super - deux fenetres côte à côte

Pour résumer :
1) Si la touche W ouvre le menu de Lubuntu, ne pas utiliser cette touche pour OpenBox (cf. Note du manuel de Lubuntu).
La configuration par défaut du fichier rc.xml est dans /etc/xdg/openbox/. Ce fichier ne peut pas être modifié. Il faut le copier dans ~/.config/openbox/.
Mettre le code suivant dans rc.xml entre <keyboard> et </keyboard>. Ce code utilise la touche Alt :

<keybind key="A-Left">        # HalfLeftScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>5</x><y>40</y><height>95%</height><width>49%</width></action>
</keybind>
<keybind key="A-Right">        # HalfRightScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>-5</x><y>40</y><height>95%</height><width>49%</width></action>
</keybind>
<keybind key="A-Up">        # HalfUpperScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>0</y><width>100%</width><height>50%</height></action>
</keybind>
<keybind key="A-Down">        # HalfLowerScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>-0</y><width>100%</width><height>50%</height></action>
</keybind>

2) Si vous voulez vraiment utiliser la touche Windows, il faudra désactiver l'ouverture du menu de Lubuntu.
Code à mettre dans rc.xml (au même endroit qu'au point 1) :

 <keybind key="W-Left">        # HalfLeftScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>5</x><y>40</y><height>95%</height><width>49%</width></action>
</keybind>
<keybind key="W-Right">        # HalfRightScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>-5</x><y>40</y><height>95%</height><width>49%</width></action>
</keybind>
<keybind key="W-Up">        # HalfUpperScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>0</y><width>100%</width><height>50%</height></action>
</keybind>
<keybind key="W-Down">        # HalfLowerScreen
      <action name="UnmaximizeFull"/>
      <action name="MoveResizeTo"><x>0</x><y>-0</y><width>100%</width><height>50%</height></action>
</keybind>

Il faut également modifier le fichier ~/.config/lxqt/globalkeyshortcuts.conf et mettre false à la touche Super_L (autre nom de la touche Windows) :

[Super_L.34]
Comment=Show/hide main menu
Enabled=false
path=/panel/mainmenu/show_hide

Hors ligne