From 0b5f86f29f0bf606d0bc4a9ab655f9abef596ae2 Mon Sep 17 00:00:00 2001 From: thelastWallE <12502210+thelastWallE@users.noreply.github.com> Date: Thu, 7 Oct 2021 00:59:23 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=8C=88=20style:=20extend=20navbar=20toolt?= =?UTF-8?q?ip?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - extend the navbar tooltip for long messages - add logmessages/PopUp for more messages --- octoprint_klipper/__init__.py | 11 +++--- octoprint_klipper/static/js/klipper.js | 36 ++++++++++++++----- .../templates/klipper_navbar.jinja2 | 2 +- .../templates/klipper_sidebar.jinja2 | 2 +- 4 files changed, 34 insertions(+), 17 deletions(-) diff --git a/octoprint_klipper/__init__.py b/octoprint_klipper/__init__.py index 2b0559d..2e8ccac 100644 --- a/octoprint_klipper/__init__.py +++ b/octoprint_klipper/__init__.py @@ -355,18 +355,18 @@ class KlipperPlugin( def on_event(self, event, payload): if event == "UserLoggedIn": - util.update_status(self, "info", "Klipper: Standby") + logger.log_info(self, "Klipper: Standby") if event == "Connecting": - util.update_status(self, "info", "Klipper: Connecting ...") + logger.log_info(self, "Klipper: Connecting ...") elif event == "Connected": - util.update_status(self, "info", "Klipper: Connected to host") + logger.log_info(self, "Klipper: Connected to host") logger.log_info( self, "Connected to host via {} @{}bps".format(payload["port"], payload["baudrate"])) elif event == "Disconnected": - util.update_status(self, "info", "Klipper: Disconnected from host") + logger.log_info(self, "Klipper: Disconnected from host") + elif event == "Error": - util.update_status(self, "error", "Klipper: Error") logger.log_error(self, payload["error"]) def processAtCommand(self, comm_instance, phase, command, parameters, tags=None, *args, **kwargs): @@ -398,7 +398,6 @@ class KlipperPlugin( self._parsing_response = True elif "!!" in line: msg = line.strip('!') - util.update_status(self, "error", msg) logger.log_error(self, msg) self.write_parsing_response_buffer() else: diff --git a/octoprint_klipper/static/js/klipper.js b/octoprint_klipper/static/js/klipper.js index 2d3eacb..a608dd6 100644 --- a/octoprint_klipper/static/js/klipper.js +++ b/octoprint_klipper/static/js/klipper.js @@ -33,6 +33,7 @@ $(function () { self.access = parameters[5]; self.shortStatus_navbar = ko.observable(); + self.shortStatus_navbar_hover = ko.observable(); self.shortStatus_sidebar = ko.observable(); self.logMessages = ko.observableArray(); @@ -142,40 +143,57 @@ $(function () { }; self.onDataUpdaterPluginMessage = function (plugin, data) { + if (plugin == "klipper") { switch (data.type) { case "PopUp": self.showPopUp(data.subtype, data.title, data.payload); break; - case "start": - break; case "reload": break; case "console": self.consoleMessage(data.subtype, data.payload); break; case "status": - if (data.payload.length > 36) { - var shortText = data.payload.substring(0, 31) + " [..]"; - self.shortStatus_navbar(shortText); - } else { - self.shortStatus_navbar(data.payload); - } - self.shortStatus_sidebar(data.payload); + self.shortStatus(data.payload, data.subtype); break; default: self.logMessage(data.time, data.subtype, data.payload); + self.shortStatus(data.payload, data.subtype) self.consoleMessage(data.subtype, data.payload); } } }; + + self.shortStatus = function(msg, type) { + + var baseText = gettext("Go to OctoKlipper Tab"); + if (msg.length > 36) { + var shortText = msg.substring(0, 31) + " [..]"; + self.shortStatus_navbar(shortText); + self.shortStatus_navbar_hover(msg); + } else { + self.shortStatus_navbar(msg); + self.shortStatus_navbar_hover(baseText); + } + + self.shortStatus_sidebar(msg); + }; + + self.logMessage = function (timestamp, type = "info", message) { + if (!timestamp) { var today = new Date(); var timestamp = today.getHours() + ":" + today.getMinutes() + ":" + today.getSeconds(); } + + if (type == "error") { + self.showPopUp(type, "Error:", message); + } + self.logMessages.push({ time: timestamp, type: type, diff --git a/octoprint_klipper/templates/klipper_navbar.jinja2 b/octoprint_klipper/templates/klipper_navbar.jinja2 index 91d3c32..2c3524a 100644 --- a/octoprint_klipper/templates/klipper_navbar.jinja2 +++ b/octoprint_klipper/templates/klipper_navbar.jinja2 @@ -1,3 +1,3 @@ - + diff --git a/octoprint_klipper/templates/klipper_sidebar.jinja2 b/octoprint_klipper/templates/klipper_sidebar.jinja2 index bb4ba7f..083ffa1 100644 --- a/octoprint_klipper/templates/klipper_sidebar.jinja2 +++ b/octoprint_klipper/templates/klipper_sidebar.jinja2 @@ -7,7 +7,7 @@ -
+