summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/files/js/filelist.js7
-rw-r--r--core/js/js.js20
2 files changed, 27 insertions, 0 deletions
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index b1e9a885063..c24d1fd8244 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -191,6 +191,13 @@ var FileList={
td.children('a.name').hide();
td.append(form);
input.focus();
+ //preselect input
+ var len = input.val().lastIndexOf('.');
+ if (len === -1) {
+ len = input.val().length;
+ }
+ input.selectRange(0,len);
+
form.submit(function(event){
event.stopPropagation();
event.preventDefault();
diff --git a/core/js/js.js b/core/js/js.js
index d85e6d88f8a..3cb4d3dd151 100644
--- a/core/js/js.js
+++ b/core/js/js.js
@@ -767,6 +767,26 @@ OC.set=function(name, value) {
context[tail]=value;
};
+/**
+ * select a range in an input field
+ * @link http://stackoverflow.com/questions/499126/jquery-set-cursor-position-in-text-area
+ * @param {type} start
+ * @param {type} end
+ */
+$.fn.selectRange = function(start, end) {
+ return this.each(function() {
+ if (this.setSelectionRange) {
+ this.focus();
+ this.setSelectionRange(start, end);
+ } else if (this.createTextRange) {
+ var range = this.createTextRange();
+ range.collapse(true);
+ range.moveEnd('character', end);
+ range.moveStart('character', start);
+ range.select();
+ }
+ });
+};
/**
* Calls the server periodically every 15 mins to ensure that session doesnt