You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@esme.apache.org by rh...@apache.org on 2010/11/22 16:43:10 UTC

svn commit: r1037758 - /incubator/esme/trunk/server/src/main/webapp/scripts/display_messages_top.js

Author: rhirsch
Date: Mon Nov 22 15:43:09 2010
New Revision: 1037758

URL: http://svn.apache.org/viewvc?rev=1037758&view=rev
Log:
[ESME-300] Clicking "reply" link in the main timeline results in a focus at the beginning of the text. Should be at the end.

Modified:
    incubator/esme/trunk/server/src/main/webapp/scripts/display_messages_top.js

Modified: incubator/esme/trunk/server/src/main/webapp/scripts/display_messages_top.js
URL: http://svn.apache.org/viewvc/incubator/esme/trunk/server/src/main/webapp/scripts/display_messages_top.js?rev=1037758&r1=1037757&r2=1037758&view=diff
==============================================================================
--- incubator/esme/trunk/server/src/main/webapp/scripts/display_messages_top.js (original)
+++ incubator/esme/trunk/server/src/main/webapp/scripts/display_messages_top.js Mon Nov 22 15:43:09 2010
@@ -73,21 +73,43 @@ var currentConvNumber = 0;
 
 function setReplyTo(id, text, msgPool, author){
     currentConvNumber = id;
+     jQuery('#vMsg').focus();
     document.getElementById('reply-to-div').style.display = "block";
     if (author.length > 0) {
       jQuery('#message_request').html("Reply to: " + author);
     } else {
       jQuery('#message_request').html("Reply to conversation");
     }
-    var rep_msg = text
+    var rep_msg = text 
     if (text.length > 50)
      rep_msg = text.substr(0, 47) + "..."
     jQuery('#reply-to-span').html(rep_msg);
     if (author.length > 0) {
       jQuery('#vMsg').val("@" + author + " ")	
     }
-    jQuery('#vMsg').focus()
+    jQuery('#vMsg').focus();
+    setCaretToPos(jQuery('#vMsg'), jQuery('#vMsg').val.length);
     jQuery('#vPool').val(msgPool);
+   
+}
+
+function setSelectionRange(input, selectionStart, selectionEnd) {
+  if (input.setSelectionRange) {
+    input.focus();
+    input.setSelectionRange(selectionStart, selectionEnd);
+  }
+  else if (input.createTextRange) {
+    var range = input.createTextRange();
+    range.collapse(true);
+    range.moveEnd('character', selectionEnd);
+    range.moveStart('character', selectionStart);
+    range.select();
+    
+  }
+}
+
+function setCaretToPos (input, pos) {
+  setSelectionRange(input, pos, pos);
 }
 
 function clearReplyTo(){