GNOME Bugzilla – Bug 152257
default handlers should never return true
Last modified: 2004-12-22 21:47:04 UTC
Here are three common use cases for responding to signals: 1) I want the default behaviour. 2) I want to override the default behaviour. 3) I want default plus additional behaviour (before or after default). I'm no signals expert, but it seems the following steps are necessary for the three use cases above. Or perhaps there's an easier way? 1) no action needed. 2) block default handler, install handler. 3) find, remember and disconnect default handler a) (before) connect custom, reconnect default b) (after) connect a proxy which calls default and returns false connect custom handler after Why don't the builtin signal handlers use "connect_after" and never stop the signal chain (always return false)? Then we have the much simpler: 1) no action needed. 2) use connect and return true from handler. 3) use either connect or connect_after depending on need.
Changing anything here isn't compatible.