Skip to content
Snippets Groups Projects
Commit 88de9e40 authored by Tom Needham's avatar Tom Needham
Browse files

Keyboard shortcuts for saving. Refined code.

parent c3388477
Branches
No related tags found
No related merge requests found
......@@ -77,8 +77,10 @@ function updateSessionFileHash(path){
"json");
}
var editor_is_saving = false;
function doFileSave(){
if(is_editor_shown){
editor_is_saving = true;
$('#editor_save').after('<img id="saving_icon" src="'+OC.filePath('core','img','loading.gif')+'"></img>');
var filecontents = window.aceEditor.getSession().getValue();
var dir = $('#editor').attr('data-dir');
......@@ -93,7 +95,10 @@ function doFileSave(){
$('#saving_icon').remove();
$('#editor_save').after('<p id="save_result" style="float: left">Saved!</p>')
setTimeout(function() {
$('#save_result').remove();
$('#save_result').fadeOut('slow',function(){
$(this).remove();
editor_is_saving = false;
});
}, 2000);
}
else {
......@@ -101,7 +106,10 @@ function doFileSave(){
$('#saving_icon').remove();
$('#editor_save').after('<p id="save_result" style="float: left">Failed!</p>');
setTimeout(function() {
$('#save_result').fadeOut('slow',function(){ $(this).remove(); });
$('#save_result').fadeOut('slow',function(){
$(this).remove();
editor_is_saving = false;
});
}, 2000);
}
}, 'json');
......@@ -112,7 +120,10 @@ function doFileSave(){
// Temporary measure until we get a tick icon
$('#editor_save').after('<p id="save_result" style="float: left">Saved!</p>');
setTimeout(function() {
$('#save_result').fadeOut('slow',function(){ $(this).remove(); });
$('#save_result').fadeOut('slow',function(){
$(this).remove();
editor_is_saving = false;
});
}, 2000);
}
}
......@@ -122,21 +133,17 @@ function doFileSave(){
// Temporary measure until we get a tick icon
$('#editor_save').after('<p id="save_result" style="float: left">Saved!</p>');
setTimeout(function() {
$('#save_result').fadeOut('slow',function(){ $(this).remove(); });
$('#save_result').fadeOut('slow',function(){
$(this).remove();
editor_is_saving = false;
});
}, 2000);
}
}, 'json');
giveEditorFocus();
} else {
$('#editor').data('editor','false');
return;
window.aceEditor.focus();
}
};
function giveEditorFocus(){
window.aceEditor.focus();
};
function showFileEditor(dir,filename){
if(!is_editor_shown){
// Loads the file editor and display it.
......@@ -190,9 +197,31 @@ function hideFileEditor(){
}
}
// Keyboard Shortcuts
var ctrlBtn = false;
function checkForCtrlKey(e){
if(e.which == 17 || e.which == 91) ctrlBtn=false;
}
function checkForSaveKeyPress(e){
if(!editor_is_saving){
if(e.which == 17 || e.which == 91) ctrlBtn=true;
if(e.which == 83 && ctrlBtn == true) {
e.preventDefault();
doFileSave();
return false;
}
} else {
e.preventDefault();
}
}
// Sets the correct size of the editor window
$(window).resize(function() {
setEditorSize();
});
var is_editor_shown = false;
$(document).ready(function(){
......@@ -220,4 +249,8 @@ $(document).ready(function(){
}
// Binds the file save and close editor events to the buttons
bindControlEvents();
});
// Binds the save keyboard shortcut events
$(document).unbind('keyup').bind('keyup',checkForCtrlKey).unbind('keydown').bind('keydown',checkForSaveKeyPress);
});
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment