Bug 6553 - Bizarre key-binding of "Ctrl+a" after upgrade
Status: RESOLVED WORKSFORME
Alias: None
Product: Openbox
Classification: Unclassified
Component: general
Version: 3.6
Hardware: PC Linux
: P3 normal
Assignee: Dana Jansens
QA Contact:
URL:
Depends on:
Blocks:
 
Reported: 2020-10-11 05:55 EDT by raumkundschafter
Modified: 2020-10-13 12:54:55 EDT
0 users

See Also:


Attachments
Openbox & Xbindkeys (2.26 KB, text/plain)
2020-10-11 05:55 EDT, raumkundschafter

Description raumkundschafter 2020-10-11 05:55:50 EDT
Created attachment 3620 [details]
Openbox & Xbindkeys

Not shure if this is a bug, I reported the issue here https://forums.bunsenlabs.org/viewtopic.php?id=7034 but couldn't find the solution, hopefully someone here could help me out:

I upgraded from Debian stable (Bunsenlabs) to testing, everything went well expect one strange key-binding change occurred: Since the upgrade "Ctrl+a" causes the previous window to come to foreground. I've checked my settings in xbindkey and menu (See attachment) and none of them are set to change anything on "Ctrl+a".
My xev output of the "Ctrl+a" combination is as follows:

...
KeyPress event, serial 48, synthetic NO, window 0x7c00001,
    root 0x85d, subw 0x0, time 50940106, (4601,-496), root:(4603,1412),
    state 0x0, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

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

FocusOut event, serial 48, synthetic NO, window 0x7c00001,
    mode NotifyWhileGrabbed, detail NotifyNonlinear

PropertyNotify event, serial 48, synthetic NO, window 0x7c00001,
    atom 0x1e5 (_NET_WM_ICON_GEOMETRY), time 50941133, state PropertyNewValue
...

Seems like something is taking the "a" key... Creating a test user and log into the test account results in the same behaviour. Login into fluxbox changes the "effect", no bizarre window focus on "Ctrl+a" anymore, so it seems to be an openbox configuration problem, however bit stumped atm where to find the fly in the ointment.
Comment 1 Dana Jansens 2020-10-11 10:38:15 EDT
I would look at the what else is starting with openbox. If youre in fluxbox and its not happening and you run “openbox —replace” does it start to happen?
Comment 2 raumkundschafter 2020-10-12 08:16:31 EDT
If I log into fluxbox and run "killall fluxbox ; openbox & exit" the behaviour starts to appear. 

The autostart script for openbox
Comment 3 raumkundschafter 2020-10-12 08:48:20 EDT
Oups this comment left too early, sorry about that! 
The autostart script lists the following commands to be executed:
...
xbindkeys_autostart 
xset b off
xset r rate 250 25
synclient VertEdgeScroll=1 HorizEdgeScroll=1 TapButton1=1 2>/dev/null
syndaemon -i .5 -K -t -R -d &
/usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1 &
xcape -e 'Super_L=Super_L|space'
nitrogen --restore
bl-compositor --start
( sleep 2; bl-tint2-session ) &
pnmixer &
clipit &
xscreensaver -no-splash &
if [ "$(readlink -f $(which bl-file-manager))" = "$(which thunar)" ]
then
    thunar --daemon &
fi
bl-xdg-autostart
...

Relevant for the behaviour seems to be "xbindkeys_autostart" & "bl-xdg-autostart", the latter lists the following on startup:
...
[*] Diodon
    File: /etc/xdg/autostart/diodon-autostart.desktop
    Executes: diodon

[*] Geoclue Demo agent                                                                    
    File: /etc/xdg/autostart/geoclue-demo-agent.desktop                                   
    Executes: /usr/libexec/geoclue-2.0/demos/agent                                        
                                                                                          
[*] AT-SPI D-Bus Bus                                                                      
    File: /etc/xdg/autostart/at-spi-dbus-bus.desktop                                      
    Executes: /usr/libexec/at-spi-bus-launcher --launch-immediately

[*] Blueman Applet
    File: /etc/xdg/autostart/blueman.desktop
    Executes: blueman-applet

[*] User folders update
    File: /etc/xdg/autostart/user-dirs-update-gtk.desktop
    Executes: xdg-user-dirs-gtk-update

[*] im-launch
    File: /etc/xdg/autostart/im-launch.desktop
    Executes: sh -c 'if [ "x$XDG_SESSION_TYPE" = "xwayland" ] ; then exec env IM_CONFIG_CHECK_ENV=1 im-launch true; fi'

[*] Network
    File: /etc/xdg/autostart/nm-applet.desktop
    Executes: nm-applet

[*] User folders update
    File: /etc/xdg/autostart/xdg-user-dirs.desktop
    Executes: xdg-user-dirs-update

[*] Power Manager
    File: /etc/xdg/autostart/xfce4-power-manager.desktop
    Executes: xfce4-power-manager

[*] PulseAudio Sound System
    File: /etc/xdg/autostart/pulseaudio.desktop
    Executes: start-pulseaudio-x11

[*] Lenovo ThinkPad Dock Daemon
    File: /etc/xdg/autostart/dockd.desktop
    Executes: dockd --daemon

[*] Screen Locker
    File: /etc/xdg/autostart/light-locker.desktop
    Executes: light-locker
Comment 4 Dana Jansens 2020-10-12 10:25:04 EDT
The autostart only runs if you run openbox-session. So it sounds like its a binding in your openbox config. You can try removing them all to find out which one it is.
Comment 5 raumkundschafter 2020-10-12 11:13:54 EDT
Thanks for that pointer! The behaviour gets even stranger though: I've removed all the commands in the autostart file but the behaviour stays the same even with just plain openbox selected in the login manager (lightdm). If fluxbox is selected, started and within "killall fluxbox ; openbox --replace" executed the behaviour doesn't occur.
Comment 6 raumkundschafter 2020-10-13 12:51:26 EDT
I think I found the needle in the Haystack by accident: playing around I found out the previous window that comes to the foreground on "Ctrl+a" is always the same first window opened when openbox is started. When closing that first window, e.g. a terminal, everything is normal "Ctrl+a" selects all :)
Comment 7 raumkundschafter 2020-10-13 12:54:55 EDT
Closing the first window after starting openbox, for instance a terminal, brings back the normal "Ctrl+a" behaviour of select all.