From: Agnibho Mondal Date: Wed, 25 Oct 2023 19:13:12 +0000 (+0530) Subject: Bugfix: crash on startup update check X-Git-Tag: v0.4~19 X-Git-Url: https://code.agnibho.com/repo?a=commitdiff_plain;h=5c0feb1b6b6d93efb9d95d8a0f23d6a589b123f0;p=medscript.git Bugfix: crash on startup update check --- diff --git a/data/config.json b/data/config.json index e591a53..c931c38 100644 --- a/data/config.json +++ b/data/config.json @@ -9,6 +9,7 @@ "preset_newline": true, "preset_delimiter": ",", "markdown": false, + "check_update": false, "smime": false, "root_bundle": "", "certificate": "", diff --git a/window.py b/window.py index b4c3c29..0066531 100644 --- a/window.py +++ b/window.py @@ -28,6 +28,7 @@ from index import Index class MainWindow(QMainWindow): signal_view=pyqtSignal(str) + signal_update=pyqtSignal(str) current_file=FileHandler() prescription=Prescription() @@ -200,20 +201,6 @@ class MainWindow(QMainWindow): except FileNotFoundError as e: print(e) - def cmd_update(self, silent=False): - try: - print("Current version "+info["version"]) - with request.urlopen(info["url"]+"/info.json") as response: - latest=json.loads(response.read().decode()) - print("Latest version "+latest["version"]) - if(version.parse(info["version"]) < version.parse(latest["version"])): - QMessageBox.information(self, "Check update", "New version "+latest["version"]+" available.
Visit "+latest["url"]+" to get the latest version.") - elif(not silent): - QMessageBox.information(self, "Check update", "No update available. You are using version "+info["version"]+".") - except Exception as e: - QMessageBox.critical(self, "Check update", "Failed to check available update.") - print(e) - def cmd_about(self): year=datetime.datetime.now().year if(year>2023): @@ -231,6 +218,23 @@ class MainWindow(QMainWindow): self.viewbox.md(os.path.join(real_dir, "README")) self.viewbox.show() + def cmd_update(self, silent=False): + try: + print("Current version "+info["version"]) + with request.urlopen(info["url"]+"/info.json") as response: + latest=json.loads(response.read().decode()) + print("Latest version "+latest["version"]) + if(version.parse(info["version"]) < version.parse(latest["version"])): + self.signal_update.emit("New version "+latest["version"]+" available.
Visit "+latest["url"]+" to get the latest version.") + elif(not silent): + self.signal_update.emit("No update available. You are using version "+info["version"]+".") + except Exception as e: + self.signal_update.emit("Failed to check available update.") + print(e) + + def show_update(self, message): + QMessageBox.information(self, "Check update", message) + def insert_preset_extra(self): try: self.input_extra.insertPlainText(self.preset_extra.data[self.input_extra_preset.currentText()]) @@ -768,6 +772,7 @@ class MainWindow(QMainWindow): self.index=Index() self.index.signal_open.connect(self.cmd_open) self.index.signal_copy.connect(self.cmd_copy) + self.signal_update.connect(self.show_update) self.new_doc() if(config["filename"]):