Using StartupNotify when it is not specified is the wrong default (IMO). StartupNotify is a contract that the application will call the needed code to finish the startup later. If we use StartupNotify even when not specified, we get irritating startup notifications that don't go away, and a wait cursor that doesn't go away (until after a long timeout).
I have published a fix here: https://github.com/engla/libfm/commit/8a4123b585da23c460a82733240ada10f6a1a2c6
This is also attached as a patch