B2G/gaia/apps/keyboard/js/keyboard.js
// coords object to have clientX, clientY, pageX, and pageY properties.
coords object to have clientX, clientY, pageX, and pageY properties.
coords object to have clientX clientY pageX and pageY properties .
function startPress(target, coords, touchId) {
  if (!isNormalKey(target))
    return;
  IMERender.highlightKey(target);
  triggerFeedback();
  setMenuTimeout(target, coords, touchId);
  var keyCode = parseInt(target.dataset.keycode);
  if (keyCode === KeyEvent.DOM_VK_BACK_SPACE) {
    sendDelete(false);
    deleteTimeout = window.setTimeout(function() {
      sendDelete(true);
      deleteInterval = setInterval(function() {
        sendDelete(true);
      }, REPEAT_RATE);
    }, REPEAT_TIMEOUT);
  }
}
function startPress ( target , coords , touchId ) { if ( ! isNormalKey ( target ) ) return ; IMERender . highlightKey ( target ) ; triggerFeedback ( ) ; setMenuTimeout ( target , coords , touchId ) ; var keyCode = parseInt ( target . dataset . keycode ) ; if ( keyCode === KeyEvent . DOM_VK_BACK_SPACE ) { sendDelete ( false ) ; deleteTimeout = window . setTimeout ( function ( ) { sendDelete ( true ) ; deleteInterval = setInterval ( function ( ) { sendDelete ( true ) ; } , REPEAT_RATE ) ; } , REPEAT_TIMEOUT ) ; } }
coords object to have clientX, clientY, pageX, and pageY properties.
coords object to have clientX clientY pageX and pageY properties .
// Feedback // Special keys (such as delete) response when pressing (not releasing) // Furthermore, delete key has a repetition behavior // First, just pressing (without feedback) // Second, after a delay (with feedback) // Third, after shorter delay (with feedback too)