diff --git a/panels/base_panel.py b/panels/base_panel.py index 4d4ef9af..f41836ae 100644 --- a/panels/base_panel.py +++ b/panels/base_panel.py @@ -22,7 +22,7 @@ class BasePanel(ScreenPanel): self.titlebar_name_type = None self.current_extruder = None self.last_usage_report = datetime.now() - self.usage_report = False + self.usage_report = 0 # Action bar buttons abscale = self.bts * 1.1 self.control['back'] = self._gtk.Button('back', scale=abscale) @@ -209,15 +209,14 @@ class BasePanel(ScreenPanel): def process_update(self, action, data): if action == "notify_proc_stat_update": - logging.info(action) cpu = (max(data["system_cpu_usage"][core] for core in data["system_cpu_usage"] if core.startswith("cpu"))) memory = (data["system_memory"]["used"] / data["system_memory"]["total"]) * 100 error = "message_popup_error" ctx = self.titlebar.get_style_context() msg = f"CPU: {cpu:2.0f}% RAM: {memory:2.0f}%" if cpu > 80 or memory > 85: - if not self.usage_report: - self.usage_report = True + if self.usage_report < 3: + self.usage_report += 1 return self.last_usage_report = datetime.now() if not ctx.has_class(error): @@ -228,7 +227,7 @@ class BasePanel(ScreenPanel): self.titlelbl.set_label(msg) if (datetime.now() - self.last_usage_report).seconds < 5: return - self.usage_report = False + self.usage_report = 0 ctx.remove_class(error) self.titlelbl.set_label(f"{self._screen.connecting_to_printer}") return