Also by Eric.

Here's the original thread (which also has a SingleSelectionModel version):
http://www.jackslocum.com/forum/viewtopic.php?t=450

Code:
YAHOO.ext.grid.NavEditorSelectionModel = function(){
    YAHOO.ext.grid.NavEditorSelectionModel.superclass.constructor.call(this);
};
YAHOO.extendX(YAHOO.ext.grid.NavEditorSelectionModel, YAHOO.ext.grid.EditorSelectionModel);

YAHOO.ext.grid.NavEditorSelectionModel.prototype.initEvents = function(){
   YAHOO.ext.grid.EditorSelectionModel.prototype.initEvents.call(this);
   this.grid.removeListener("keydown", this.keyDown, this, true);
   YAHOO.ext.grid.DefaultSelectionModel.prototype.initEvents.call(this);
};

YAHOO.ext.grid.NavEditorSelectionModel.prototype.keyDown = function(e){
   var m = YAHOO.ext.grid.NavEditorSelectionModel;
   var superclass = this.gridHasActiveEditor()
      ? YAHOO.ext.grid.EditorSelectionModel.prototype
      : YAHOO.ext.grid.DefaultSelectionModel.prototype;
   superclass.keyDown.call(this, e);
};

YAHOO.ext.grid.NavEditorSelectionModel.prototype.gridHasActiveEditor = function(){                                                                                 
   // hack
   var colConfigs = this.grid.getColumnModel().config;
   var editing = false;
   for (var i = 0; i < colConfigs.length && !editing; ++i)
   {
      var c = colConfigs[i];
      editing = c.editor && c.editor.editing;
   }
   return editing;
}

YAHOO.ext.grid.NavEditorSelectionModel.prototype.focusRow
   = YAHOO.ext.grid.DefaultSelectionModel.prototype.focusRow;

YAHOO.ext.grid.NavEditorSelectionModel.prototype.setRowState
   = YAHOO.ext.grid.DefaultSelectionModel.prototype.setRowState;