[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/webroot/rsrc/js/core/ -> behavior-keyboard-shortcuts.js (source)

   1  /**
   2   * @provides javelin-behavior-phabricator-keyboard-shortcuts
   3   * @requires javelin-behavior
   4   *           javelin-workflow
   5   *           javelin-json
   6   *           javelin-dom
   7   *           phabricator-keyboard-shortcut
   8   */
   9  
  10  /**
  11   * Define global keyboard shortcuts.
  12   */
  13  JX.behavior('phabricator-keyboard-shortcuts', function(config) {
  14    var workflow = null;
  15  
  16    var desc = 'Show keyboard shortcut help for the current page.';
  17    new JX.KeyboardShortcut('?', desc)
  18      .setHandler(function(manager) {
  19        if (workflow) {
  20          // Already showing the dialog.
  21          return;
  22        }
  23        var desc = manager.getShortcutDescriptions();
  24        var data = {keys : JX.JSON.stringify(desc)};
  25        workflow = new JX.Workflow(config.helpURI, data)
  26          .setCloseHandler(function() {
  27            workflow = null;
  28          });
  29        workflow.start();
  30      })
  31      .register();
  32  
  33    if (config.searchID) {
  34      desc = 'Give keyboard focus to the search box.';
  35      new JX.KeyboardShortcut('/', desc)
  36        .setHandler(function() {
  37          var search = JX.$(config.searchID);
  38          search.focus();
  39          search.select();
  40        })
  41        .register();
  42    }
  43  });


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1