r/bspwm•
DriNeo

On some applications the closing command instantly kills the app and on other the apps reacts nicely.

Hello. This sxhkd shortcut has different implication depending on the app.

super + {_,shift + }x bspc node -{c,k}

On inkscape if a project has not saved changes a windows asks for saving or returning in the app. On the Godot engine the window brutally closes and the changes was lost. This is annoying because I can close the editor by mistake when I want to close a window on its side. This was happed two times today and I will becomes mad. On Xfce the window cross button make the dialog box, similar to Inkscape, appearing on Godot, no brutal closing. So what happened ?

Posted Sep 8, 2023, 7:02 PM UTC

13
VegetableAd3267•

I cannot reproduce this.

Which keybinding are you using to close the window?

close node will ask the program to handle closing if it supports it via WM_DELETE_WINDOW event/property. Godot windows have this property. If the window doesn't support delete window then it will get a xcb_kill_client

kill node will just xcb_kill_client the window(s).

xfce would just be emitting the WM_DELETE_WINDOW message to the window same as close_node.

1
DriNeoOP•
xprop -display $DISPLAY -name "tuto.tscn - Snong - Godot Engine"
_NET_WM_NAME(UTF8_STRING) = "tuto.tscn - Snong - Godot Engine"
WM_NORMAL_HINTS(WM_SIZE_HINTS):
		program specified minimum size: 1024 by 600
_NET_WM_ICON(CARDINAL) = 	Icon (128 x 128):
	(not shown)

XdndAware(ATOM) = BITMAP
WM_PROTOCOLS(ATOM): protocols  WM_DELETE_WINDOW
_NET_WM_PID(CARDINAL) = 23816
_NET_WM_STATE(ATOM) = _NET_WM_STATE_MAXIMIZED_VERT, _NET_WM_STATE_MAXIMIZED_HORZ
_NET_WM_ICON_GEOMETRY(CARDINAL) = 949, 2, 34, 22
_NET_WM_DESKTOP(CARDINAL) = 3
WM_STATE(WM_STATE):
		window state: Iconic
		icon window: 0x0
WM_CLASS(STRING) = "Godot_Editor", "Godot"
WM_NAME(STRING) = "tuto.tscn - Snong - Godot Engine"
1
VegetableAd3267•

That confirms your godot should close correctly. It would be odd if it didn't.

When godot is closing it will dim the main window, at least on my machine this takes long enough to be noticeable. If you do see it dim, then godot is shutting down "correctly". That would normally also be the point you would get the save changes dialog.

You could use xdotool to send the event if you think bspwm is the cause of your issue. Use the windowquit action to send _NET_CLOSE_WINDOW to godot, which will run close_node() on it. You really shouldn't see different behavior though.

1