diff --git a/apps/files_texteditor/css/style.css b/apps/files_texteditor/css/style.css
index 2a9066839c303f6eb3d1fa8071db1c85c48409d0..e94244d1be3a12af5211a8142837ebb7e26e3667 100644
--- a/apps/files_texteditor/css/style.css
+++ b/apps/files_texteditor/css/style.css
@@ -22,4 +22,8 @@
 #editor_save{
 	margin-left: 7px;
 	float: left;	
+}
+#saving_icon{
+	padding-top: 3px;
+	float: left;	
 }
\ No newline at end of file
diff --git a/apps/files_texteditor/js/editor.js b/apps/files_texteditor/js/editor.js
index 1823b5155a1335cb9bfaa94ac7fb395a842778e0..73bc2f411148fb746ecfdc8b1e11d20378bad870 100644
--- a/apps/files_texteditor/js/editor.js
+++ b/apps/files_texteditor/js/editor.js
@@ -55,14 +55,6 @@ function bindControlEvents(){
 	$('#editor_close').live('click',function() {
 		hideFileEditor();	
 	});
-	
-	$(window).keypress(function(event) {
-    	if (!(event.which == 115 && (event.ctrlKey || event.metaKey)) && !(event.which == 19)) return true;
-    	event.preventDefault();
-		alert("Saved file");
-		doFileSave();
-    	return false;
-	});
 }
 
 function editorIsShown(){
@@ -84,7 +76,7 @@ function updateSessionFileHash(path){
 
 function doFileSave(){
 	if(editorIsShown()){
-	$('#editor_save').val(t('files_texteditor','Saving')+'...');
+	$('#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');
 		var file =  $('#editor').attr('data-filename');
@@ -95,7 +87,7 @@ function doFileSave(){
 				if(answer){
 					$.post(OC.filePath('files_texteditor','ajax','savefile.php'),{ filecontents: filecontents, file: file, dir: dir, force: 'true' },function(jsondata){
 						if(jsondata.status =='success'){
-							$('#editor_save').val(t('files_texteditor','Save'));
+							$('#saving_icon').remove();
 						} 
 						else {
 							// Save error
@@ -105,13 +97,12 @@ function doFileSave(){
 				} 
 		   		else {
 					// Don't save!
-					$('#editor_save').effect("highlight", {color:'#FF5757'}, 3000);
-					$('#editor_save').val(t('files_texteditor','Save'));	
+					$('#editor_save').effect("highlight", {color:'#FF5757'}, 1000);
 		   		}
 			} 
 			else if(jsondata.status == 'success'){
 				// Success
-				$('#editor_save').val(t('files_texteditor','Save'));
+				$('#saving_icon').remove();
 			}
 		}, 'json');
 	giveEditorFocus();
diff --git a/core/img/loader.gif b/core/img/loader.gif
new file mode 100644
index 0000000000000000000000000000000000000000..e192ca895cd00d6b752ec84619b787188f30ee41
Binary files /dev/null and b/core/img/loader.gif differ