Created attachment 2097[details]
patch to fix the issue
(I sent this to the mailing list but didn't get a response -- sorry for the duplication.)
The Chrome web browser has a feature where it draws its own window decorations. When this setting is toggled, Chrome calls gtk_window_set_decorated(), which makes GTK change the window's requested decorated state via the _MOTIF_WM_HINTS property. Openbox honors this property on new windows but doesn't currently reload it in response to PropertyNotify events, so already-open windows don't get updated when the setting is changed. The attached patch "fixes" this (I use quotes because I can't find any specs describing how _MOTIF_WM_HINTS is supposed to be applied, although I've confirmed that both Metacity and Compiz reload it when it changes).
I've done something similar to this in git now, but i just made the get function not static and put the type_and_transient and setup_decor in event.c directly like how it's done for the other hints. I don't see why get_state or update_normal_hints would be needed?
Created attachment 2097 [details] patch to fix the issue (I sent this to the mailing list but didn't get a response -- sorry for the duplication.) The Chrome web browser has a feature where it draws its own window decorations. When this setting is toggled, Chrome calls gtk_window_set_decorated(), which makes GTK change the window's requested decorated state via the _MOTIF_WM_HINTS property. Openbox honors this property on new windows but doesn't currently reload it in response to PropertyNotify events, so already-open windows don't get updated when the setting is changed. The attached patch "fixes" this (I use quotes because I can't find any specs describing how _MOTIF_WM_HINTS is supposed to be applied, although I've confirmed that both Metacity and Compiz reload it when it changes).