diff options
author | Andreas Gohr <gohr@cosmocode.de> | 2009-11-25 09:52:24 +0100 |
---|---|---|
committer | Andreas Gohr <gohr@cosmocode.de> | 2009-11-25 09:52:24 +0100 |
commit | f5001a3cff26438d86e88cbdde25e76c2a732e6c (patch) | |
tree | 5fd761c96dfc9bc602cca21250f691cb1dec03f0 /lib/scripts | |
parent | beca106a3366b1fefe827205475e6ff754fb20c5 (diff) | |
download | rpg-f5001a3cff26438d86e88cbdde25e76c2a732e6c.tar.gz rpg-f5001a3cff26438d86e88cbdde25e76c2a732e6c.tar.bz2 |
fixed list indention code
Ignore-this: bd910501ef05d1341c1d67648dc66e32
Firefox doesn't send correct keycodes in onkeypress events
darcs-hash:20091125085224-6e07b-ffce34608064ffe62708da5efb3065103ca95eda.gz
Diffstat (limited to 'lib/scripts')
-rw-r--r-- | lib/scripts/edit.js | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/scripts/edit.js b/lib/scripts/edit.js index d309c5e75..ef0a9a106 100644 --- a/lib/scripts/edit.js +++ b/lib/scripts/edit.js @@ -156,6 +156,7 @@ function keyHandler(e){ search.lastIndexOf("\r")); //IE workaround search = search.substr(linestart); + if(e.keyCode == 13){ // Enter // keep current indention for lists and code var match = search.match(/(\n +([\*-] ?)?)/); @@ -164,6 +165,7 @@ function keyHandler(e){ insertAtCarret(field.id,match[1]); field.scrollTop += (field.scrollHeight - scroll); e.preventDefault(); // prevent enter key + return false; } }else if(e.keyCode == 8){ // Backspace // unindent lists @@ -184,6 +186,7 @@ function keyHandler(e){ } setSelection(selection); e.preventDefault(); // prevent backspace + return false; } }else if(e.keyCode == 32){ // Space // intend list item @@ -195,6 +198,7 @@ function keyHandler(e){ selection.end = selection.start; setSelection(selection); e.preventDefault(); // prevent space + return false; } } } @@ -203,7 +207,7 @@ function keyHandler(e){ addInitEvent(function(){ var field = $('wiki__text'); if(!field) return; - addEvent(field,'keypress',keyHandler); + addEvent(field,'keydown',keyHandler); }); /** |