Previously when hitting escape on a CPPanel, the key chain event was broken.
Now when the user hit escape, cappuccino do the following process
- Check if the firstResponder or the chain of the nextResponder implement cancelOperation:
- If not, performKeyEquivalent on the firstResponder and so on
- If not, call the method cancel: on the firstResponder and the chain (not in the case of the CPPopover)
Previously, a complete: method was called if the user hit escape on a void window. This is not a feature of Cocoa, @apajarita or @aljunberg can you confirm that ?
This commit is related to the commit #2139
Not clear why this worked before but not now. This fix makes sense regardless.
Without this fix, clicks would not be sent through to the token field menu because its window wasn't the key window.
This fix makes the autocomplete menu declare it does not need to and does not want to become the key window.
Fixes#1807.
Without this fix, `CPPanel` followed the same rules as `CPWindow` with regards to becoming the key window. But `CPPanel` is supposed to always be willing to become the key window, as stated in its documentation.
This change makes `CPPanel` always return `YES` for `canBecomeKeyWindow`.