From c1c4cd07bb1ef200d29a3c2d71aecc73c5d85d93 Mon Sep 17 00:00:00 2001 From: Ruben Daniels Date: Wed, 23 Sep 2015 14:40:21 -0700 Subject: [PATCH 1/9] Enable Bash REPL. Add Ctrl-C to abort commands --- configs/client-default.js | 2 +- package.json | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/configs/client-default.js b/configs/client-default.js index 5e87fe8b..a949f122 100644 --- a/configs/client-default.js +++ b/configs/client-default.js @@ -382,7 +382,7 @@ module.exports = function(options) { "plugins/c9.ide.immediate/evaluator", "plugins/c9.ide.immediate/evaluators/browserjs", "plugins/c9.ide.immediate/evaluators/debugnode", - // "plugins/c9.ide.immediate/evaluators/bash", + "plugins/c9.ide.immediate/evaluators/bash", "plugins/c9.ide.run.debug/variables", "plugins/c9.ide.run.debug/watches", "plugins/c9.ide.run.debug/liveinspect", diff --git a/package.json b/package.json index d156b3cb..833ebd84 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "c9.ide.format": "#b0bb91a623", "c9.ide.help.support": "#e95f98f87c", "c9.ide.imgeditor": "#66a9733dc1", - "c9.ide.immediate": "#18c23aa730", + "c9.ide.immediate": "#2736f8baaa", "c9.ide.installer": "#0fde9f0067", "c9.ide.mount": "#da6ad73c5b", "c9.ide.navigate": "#c191d9b92f", @@ -108,6 +108,8 @@ "c9.ide.save": "#e00549cb0f", "c9.ide.scm": "#0bccfb982b", "c9.ide.terminal.monitor": "#b76f1c9f24", + "c9.ide.test": "#d312a01ac6", + "c9.ide.test.mocha": "#79ff886c04", "c9.ide.theme.flat": "#2de8414db7", "c9.ide.threewaymerge": "#229382aa0b", "c9.ide.undo": "#b028bcb4d5", From d8ec9e51dc3bacdc0a70cc5a2f60f62d84a28c56 Mon Sep 17 00:00:00 2001 From: Ruben Daniels Date: Wed, 23 Sep 2015 15:09:39 -0700 Subject: [PATCH 2/9] Add Abort to Immediate Pane --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 833ebd84..882fb55c 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "c9.ide.format": "#b0bb91a623", "c9.ide.help.support": "#e95f98f87c", "c9.ide.imgeditor": "#66a9733dc1", - "c9.ide.immediate": "#2736f8baaa", + "c9.ide.immediate": "#4b0057aa7a", "c9.ide.installer": "#0fde9f0067", "c9.ide.mount": "#da6ad73c5b", "c9.ide.navigate": "#c191d9b92f", From 7b3581e7e483cf4e6e8674c28ebde7c62d8c178b Mon Sep 17 00:00:00 2001 From: Ruben Daniels Date: Wed, 23 Sep 2015 15:54:04 -0700 Subject: [PATCH 3/9] Tweak abort() in bash evaluator. Make immediate toolbar extensible by evaluators --- package.json | 4 +-- plugins/c9.core/ext.js | 57 ++++++++++++++++-------------- plugins/c9.ide.ui/lib/menu/menu.js | 4 +-- 3 files changed, 34 insertions(+), 31 deletions(-) diff --git a/package.json b/package.json index 882fb55c..a4730c92 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,7 @@ "c9.ide.find": "#35379124ca", "c9.ide.find.infiles": "#c132ad243c", "c9.ide.find.replace": "#44772dd796", - "c9.ide.run.debug": "#e38e16e120", + "c9.ide.run.debug": "#a46abda8e9", "c9.automate": "#47e2c429c9", "c9.ide.ace.emmet": "#6dc4585e02", "c9.ide.ace.gotoline": "#a8ff07c8f4", @@ -88,7 +88,7 @@ "c9.ide.format": "#b0bb91a623", "c9.ide.help.support": "#e95f98f87c", "c9.ide.imgeditor": "#66a9733dc1", - "c9.ide.immediate": "#4b0057aa7a", + "c9.ide.immediate": "#520ee525c0", "c9.ide.installer": "#0fde9f0067", "c9.ide.mount": "#da6ad73c5b", "c9.ide.navigate": "#c191d9b92f", diff --git a/plugins/c9.core/ext.js b/plugins/c9.core/ext.js index f5b90e52..29369049 100644 --- a/plugins/c9.core/ext.js +++ b/plugins/c9.core/ext.js @@ -530,8 +530,8 @@ define(function(require, exports, module) { }); } - function cleanUp(keepElements) { - if (!keepElements) { + function cleanUp(what) { + if (!what || ~what.indexOf("elements")) { // Loop through elements elements.forEach(function(element) { element.destroy(true, true); @@ -542,33 +542,36 @@ define(function(require, exports, module) { } // Loop through events - events.forEach(function(eventRecord) { - var event = eventRegistry[eventRecord[0]]; - if (!event) return; // this happens with mock plugins during testing - var type = eventRecord[1]; - var id = eventRecord[2]; - var _events = event._events; - var eventList = _events && _events[type]; - if (typeof eventList == "function") { - if (eventList.listenerId == id) - event.off(type, eventList); - } else if (Array.isArray(eventList)) { - eventList.some(function(listener) { - if (listener.listenerId != id) return; - event.off(type, listener); - return true; - }); - } - }); - events = []; + if (!what || ~what.indexOf("events")) { + events.forEach(function(eventRecord) { + var event = eventRegistry[eventRecord[0]]; + if (!event) return; // this happens with mock plugins during testing + var type = eventRecord[1]; + var id = eventRecord[2]; + var _events = event._events; + var eventList = _events && _events[type]; + if (typeof eventList == "function") { + if (eventList.listenerId == id) + event.off(type, eventList); + } else if (Array.isArray(eventList)) { + eventList.some(function(listener) { + if (listener.listenerId != id) return; + event.off(type, listener); + return true; + }); + } + }); + events = []; + onNewEvents = {}; + } // Loop through other - other.forEach(function(o) { - o(); - }); - other = []; - - onNewEvents = {}; + if (!what || ~what.indexOf("other")) { + other.forEach(function(o) { + o(); + }); + other = []; + } } function setAPIKey(apikey){ diff --git a/plugins/c9.ide.ui/lib/menu/menu.js b/plugins/c9.ide.ui/lib/menu/menu.js index 8c786579..f2525684 100644 --- a/plugins/c9.ide.ui/lib/menu/menu.js +++ b/plugins/c9.ide.ui/lib/menu/menu.js @@ -1530,8 +1530,8 @@ apf.item = function(struct, tagName){ //@todo Anim effect here? this.dispatchEvent("click", { - xmlContext : this.parentNode.xmlReference, - opener : this.parentNode.opener + xmlContext : (this.parentNode || 0).xmlReference, + opener : (this.parentNode || 0).opener }); From 1d9d07f48322a5c853f6102a68b36b9b050e8d3e Mon Sep 17 00:00:00 2001 From: Ruben Daniels Date: Wed, 23 Sep 2015 16:01:21 -0700 Subject: [PATCH 4/9] Hello message should be a comment --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a4730c92..70ba314b 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "c9.ide.format": "#b0bb91a623", "c9.ide.help.support": "#e95f98f87c", "c9.ide.imgeditor": "#66a9733dc1", - "c9.ide.immediate": "#520ee525c0", + "c9.ide.immediate": "#6cd73fca42", "c9.ide.installer": "#0fde9f0067", "c9.ide.mount": "#da6ad73c5b", "c9.ide.navigate": "#c191d9b92f", From bf45f1820182f3d8ebf4120b757fdc1640cf77e5 Mon Sep 17 00:00:00 2001 From: Ruben Daniels Date: Wed, 23 Sep 2015 16:46:38 -0700 Subject: [PATCH 5/9] Tweaks to make menus work better --- package.json | 2 +- plugins/c9.ide.ui/lib/menu/menu.js | 2 ++ plugins/c9.ide.ui/ui.js | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 70ba314b..3eb09394 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "c9.ide.format": "#b0bb91a623", "c9.ide.help.support": "#e95f98f87c", "c9.ide.imgeditor": "#66a9733dc1", - "c9.ide.immediate": "#6cd73fca42", + "c9.ide.immediate": "#9dc67b8232", "c9.ide.installer": "#0fde9f0067", "c9.ide.mount": "#da6ad73c5b", "c9.ide.navigate": "#c191d9b92f", diff --git a/plugins/c9.ide.ui/lib/menu/menu.js b/plugins/c9.ide.ui/lib/menu/menu.js index f2525684..711e7ac9 100644 --- a/plugins/c9.ide.ui/lib/menu/menu.js +++ b/plugins/c9.ide.ui/lib/menu/menu.js @@ -738,6 +738,8 @@ apf.menu = function(struct, tagName){ * @param {String} value The value of the item to select. */ this.select = function(group, value){ + this.selectedValue = value; + var nodes = this.childNodes; var i, l = nodes.length; for (i = 0; i < l; i++) { diff --git a/plugins/c9.ide.ui/ui.js b/plugins/c9.ide.ui/ui.js index d45b7f5b..3b5b7030 100644 --- a/plugins/c9.ide.ui/ui.js +++ b/plugins/c9.ide.ui/ui.js @@ -114,6 +114,7 @@ define(function(require, module, exports) { }; } wrap(apf.item.prototype, "checked", false); + wrap(apf.item.prototype, "selected", false); wrap(apf.spinner.prototype, "value", true); wrap(apf.group.prototype, "value", false); wrap(apf.checkbox.prototype, "value", false); From 4d2ec63302f7648b23b547f365e075d347d636a6 Mon Sep 17 00:00:00 2001 From: Ruben Daniels Date: Wed, 23 Sep 2015 17:03:03 -0700 Subject: [PATCH 6/9] Revert unneeded change --- plugins/c9.ide.ui/ui.js | 1 - 1 file changed, 1 deletion(-) diff --git a/plugins/c9.ide.ui/ui.js b/plugins/c9.ide.ui/ui.js index 3b5b7030..d45b7f5b 100644 --- a/plugins/c9.ide.ui/ui.js +++ b/plugins/c9.ide.ui/ui.js @@ -114,7 +114,6 @@ define(function(require, module, exports) { }; } wrap(apf.item.prototype, "checked", false); - wrap(apf.item.prototype, "selected", false); wrap(apf.spinner.prototype, "value", true); wrap(apf.group.prototype, "value", false); wrap(apf.checkbox.prototype, "value", false); From c24b68ead0ded552e413c24ed8c3cc1912c1682f Mon Sep 17 00:00:00 2001 From: nightwing Date: Sun, 27 Sep 2015 18:26:49 +0400 Subject: [PATCH 7/9] allow copy from immediate window --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 3eb09394..826b6876 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "c9.ide.format": "#b0bb91a623", "c9.ide.help.support": "#e95f98f87c", "c9.ide.imgeditor": "#66a9733dc1", - "c9.ide.immediate": "#9dc67b8232", + "c9.ide.immediate": "#7370cd6812", "c9.ide.installer": "#0fde9f0067", "c9.ide.mount": "#da6ad73c5b", "c9.ide.navigate": "#c191d9b92f", From 33942fd965aa4cf7dba7fc1240a13190ee4c3ac5 Mon Sep 17 00:00:00 2001 From: nightwing Date: Mon, 28 Sep 2015 12:43:29 +0400 Subject: [PATCH 8/9] restore old notebook mode for immediate --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 826b6876..ef2f994b 100644 --- a/package.json +++ b/package.json @@ -76,7 +76,7 @@ "c9.ide.ace.emmet": "#6dc4585e02", "c9.ide.ace.gotoline": "#a8ff07c8f4", "c9.ide.ace.keymaps": "#bf6d36213f", - "c9.ide.ace.repl": "#7989bbd07f", + "c9.ide.ace.repl": "#5aae9a5461", "c9.ide.ace.split": "#0ae0151c78", "c9.ide.ace.statusbar": "#d95be89d53", "c9.ide.ace.stripws": "#cf0f42ac59", From 51fa8287f585c8d9a544aa7a89686e766a712579 Mon Sep 17 00:00:00 2001 From: Ruben Daniels Date: Tue, 20 Oct 2015 21:29:59 -0700 Subject: [PATCH 9/9] Fix immediate test --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ef2f994b..8d02e115 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "c9.ide.format": "#b0bb91a623", "c9.ide.help.support": "#e95f98f87c", "c9.ide.imgeditor": "#66a9733dc1", - "c9.ide.immediate": "#7370cd6812", + "c9.ide.immediate": "#29fd6d3f51", "c9.ide.installer": "#0fde9f0067", "c9.ide.mount": "#da6ad73c5b", "c9.ide.navigate": "#c191d9b92f",