diff --git a/notebook/static/notebook/js/actions.js b/notebook/static/notebook/js/actions.js index 6bd43eb6f..6ff98e9b2 100644 --- a/notebook/static/notebook/js/actions.js +++ b/notebook/static/notebook/js/actions.js @@ -335,35 +335,7 @@ define(function(require){ 'command-palette': { help_index : 'aa', handler : function(env){ - var form = $('
'); - var container = $('
').addClass('typeahead-container'); - var field = $('
').addClass('typeahead-field'); - var span = $('').addClass('typeahead-query'); - var input = $('').attr('type', 'search'); - - span.append(input) - field.append(span) - container.append(field) - form.append(container) - input.typeahead({ - order: "asc", - source: { - groupName: { - data: [ 'california', 'washington', 'state', 'france', 'china', 'russia', 'rust', 'river' , 'repression'] - } - }, - callback: { - onInit: function () {console.log('this is init') } - } - }) - dialog.modal({ - title: 'Execute Action', - body: $('
').append(form), - buttons: { - OK: {'class': 'btn-primary'} - }, - keyboard_manager: env.notebook.keyboard_manager - }); + env.notebook.show_command_palette(); } } diff --git a/notebook/static/notebook/js/commandpalette.js b/notebook/static/notebook/js/commandpalette.js new file mode 100644 index 000000000..ce7df659c --- /dev/null +++ b/notebook/static/notebook/js/commandpalette.js @@ -0,0 +1,41 @@ +// Copyright (c) Jupyter Development Team. +// Distributed under the terms of the Modified BSD License. + +define(function(require){ + "use strict"; + + var $ = require("jquery"); + var dialog = require("base/js/dialog"); + var CommandPalette = function(notebook) { + var form = $(''); + var container = $('
').addClass('typeahead-container'); + var field = $('
').addClass('typeahead-field'); + var span = $('').addClass('typeahead-query'); + var input = $('').attr('type', 'search'); + span.append(input) + field.append(span) + container.append(field) + form.append(container) + input.typeahead({ + order: "asc", + source: { + groupName: { + data: [ 'california', 'washington', 'state', 'france', 'china', 'russia', 'rust', 'river' , 'repression'] + } + }, + callback: { + onInit: function () {console.log('this is init') } + } + }) + dialog.modal({ + title: 'Execute Action', + body: $('
').append(form), + buttons: { + OK: {'class': 'btn-primary'} + }, + keyboard_manager: notebook.keyboard_manager + }); + } + return {'CommandPalette': CommandPalette}; +}); + diff --git a/notebook/static/notebook/js/keyboardmanager.js b/notebook/static/notebook/js/keyboardmanager.js index 05764b955..2138e81a0 100644 --- a/notebook/static/notebook/js/keyboardmanager.js +++ b/notebook/static/notebook/js/keyboardmanager.js @@ -84,7 +84,7 @@ define([ KeyboardManager.prototype.get_default_command_shortcuts = function() { return { - 'cmd-shift-P': 'ipython.command-palette', + 'shift-p': 'ipython.command-palette', 'shift-space': 'ipython.scroll-up', 'shift-v' : 'ipython.paste-cell-before', 'shift-m' : 'ipython.merge-selected-cells', diff --git a/notebook/static/notebook/js/notebook.js b/notebook/static/notebook/js/notebook.js index 731131ad7..576f0051c 100644 --- a/notebook/static/notebook/js/notebook.js +++ b/notebook/static/notebook/js/notebook.js @@ -27,6 +27,7 @@ define(function (require) { var rawcell_celltoolbar = require('notebook/js/celltoolbarpresets/rawcell'); var slideshow_celltoolbar = require('notebook/js/celltoolbarpresets/slideshow'); var scrollmanager = require('notebook/js/scrollmanager'); + var commandpalette = require('notebook/js/commandpalette'); /** * Contains and manages cells. @@ -319,6 +320,11 @@ define(function (require) { }; }; + + Notebook.prototype.show_command_palette = function() { + var x = new commandpalette.CommandPalette(this); + } + /** * Trigger a warning dialog about missing functionality from newer minor versions */