Hi
On Fri, Sep 02, 2005 at 09:56:40AM +0100, Christophe Rhodes wrote:
Regarding the following patch, of August 25th:
Modified Files: presentation-defs.lisp Log Message: This patch HANDLER-BINDs the ABORT-GESTURE condition to #'abort for the function ACCEPT in presentation-defs.lisp.
I believe this has had the side effect of making C-g in climacs, while in the process of typing an extended command (e.g. com-find-file, started by C-x C-f) abort the entire application rather than just the command input -- as the ESA-TOP-LEVEL does not provide an ABORT restart -- instead, it tries to handle abort-gesture itself, but the control is never passed to that handler because the inner handler in ACCEPT unconditionally handles the gesture.
What was the intent of all of this? How is it meant to behave?
I just commited a patch for this that was suggested by Christophe Rhodes. See: http://article.gmane.org/gmane.lisp.mcclim.cvs/285
We reSIGNAL the condition now before the call to ABORT, to give outer handlers a chance to say "I know how to handle this" (as Christophe Rhodes has put it).
I did some quick tests: A simple (accept 'integer) is still abortable via the abort-gesture and it does not break Climacs, so I commited it right away, as it is in any case better than the previous version.
Bye, Max