Merge pull request #1229 from ether/control-s

catch control S and send an event to save a revision -- fixes #1128
This commit is contained in:
Marcel Klehr 2012-11-29 08:57:10 -08:00
commit ab148ebc1a
1 changed files with 7 additions and 2 deletions

View File

@ -3562,7 +3562,7 @@ function Ace2Inner(){
inCallStackIfNecessary("handleKeyEvent", function()
{
if (type == "keypress" || (isTypeForSpecialKey && keyCode == 13 /*return*/ ))
if (type == "keypress" || (isTypeForSpecialKey && keyCode == 13 || keyCode == 83 /*return*/ ))
{
// in IE, special keys don't send keypress, the keydown does the action
if (!outsideKeyPress(evt))
@ -3575,7 +3575,6 @@ function Ace2Inner(){
{
outsideKeyDown(evt);
}
if (!stopped)
{
var specialHandledInHook = hooks.callAll('aceKeyEvent', {
@ -3614,6 +3613,12 @@ function Ace2Inner(){
}, 0);
specialHandled = true;
}
if ((!specialHandled) && isTypeForSpecialKey && keyCode == 83)
{
evt.preventDefault();
parent.parent.pad.collabClient.sendMessage({"type":"SAVE_REVISION"}); /* The parent.parent part of this is BAD and I feel bad.. It may break something */
specialHandled = true;
}
if ((!specialHandled) && isTypeForSpecialKey && keyCode == 9 && !(evt.metaKey || evt.ctrlKey))
{
// tab