diff --git a/octoprint/settings.py b/octoprint/settings.py index b1e67ce..2d05f9b 100644 --- a/octoprint/settings.py +++ b/octoprint/settings.py @@ -248,7 +248,7 @@ class Settings(object): return feedbackControls def _getFeedbackControls(self, control=None): - if control["type"] == "feedback_command": + if control["type"] == "feedback_command" or control["type"] == "feedback": pattern = control["regex"] try: matcher = re.compile(pattern) diff --git a/octoprint/static/js/app/viewmodels/control.js b/octoprint/static/js/app/viewmodels/control.js index bfab9e0..3f89d57 100644 --- a/octoprint/static/js/app/viewmodels/control.js +++ b/octoprint/static/js/app/viewmodels/control.js @@ -68,7 +68,7 @@ function ControlViewModel(loginStateViewModel, settingsViewModel) { for (var i = 0; i < control.input.length; i++) { control.input[i].value = control.input[i].default; } - } else if (control.type == "feedback_command") { + } else if (control.type == "feedback_command" || control.type == "feedback") { control.output = ko.observable(""); self.feedbackControlLookup[control.name] = control.output; } else if (control.type == "section") { @@ -162,6 +162,8 @@ function ControlViewModel(loginStateViewModel, settingsViewModel) { return "customControls_parametricCommandTemplate"; case "feedback_command": return "customControls_feedbackCommandTemplate"; + case "feedback": + return "customControls_feedbackTemplate"; default: return "customControls_emptyTemplate"; } diff --git a/octoprint/templates/index.jinja2 b/octoprint/templates/index.jinja2 index 6d077ee..1d8883e 100644 --- a/octoprint/templates/index.jinja2 +++ b/octoprint/templates/index.jinja2 @@ -402,6 +402,11 @@ +