thomascube
2008-08-22 9e7a1b4167ebe12c91c6fe2429b834bdc2a435a3
Better fix for keyboard controls; does not disable all kind of keyboard events

1 files modified
22 ■■■■■ changed files
program/js/list.js 22 ●●●●● patch | view | raw | blame | history
program/js/list.js
@@ -88,7 +88,7 @@
    // set body events
    if (this.keyboard) {
      rcube_event.add_listener({element:document, event:'keyup', object:this, method:'key_press'});
      rcube_event.add_listener({element:document, event:'keydown', object:rcube_event, method:'cancel'});
      rcube_event.add_listener({element:document, event:'keydown', object:this, method:'key_down'});
    }
  }
},
@@ -573,6 +573,26 @@
  return true;
},
/**
 * Handler for keydown events
 */
key_down: function(e)
{
  switch (rcube_event.get_keycode(e))
  {
    case 40:
    case 38:
    case 63233:
    case 63232:
      if (!rcube_event.get_modifier(e) && this.focused)
        return rcube_event.cancel(e);
    default:
  }
  return true;
},
/**
 * Special handling method for arrow keys