diff --git a/OTPListModel.py b/OTPListModel.py index fc999b3123962f320357fa63ecd0ad4d45d2fa2b..7d3579b576f202e2d41401d4e2d18536f7dd97ee 100644 --- a/OTPListModel.py +++ b/OTPListModel.py @@ -94,12 +94,16 @@ class OPTListModel(QtCore.QAbstractListModel): self._items = list def load(self): - jsonDict = json.loads(keyring.get_password(SERVICE,"__config")) + config = keyring.get_password(SERVICE,"__config") + if(config == None): + return + jsonDict = json.loads(config) size = len(self._items) self._items = [] - for item in jsonDict: - self._items.append(OTPModel(item["name"],item["OTPType"],keyring.get_password(SERVICE,item["name"]),item["icon"],item["timeout"],item["algo"])) - self.dataChanged.emit(self.index(0,0),self.index(size-1,0)) + if(jsonDict != None): + for item in jsonDict: + self._items.append(OTPModel(item["name"],item["OTPType"],keyring.get_password(SERVICE,item["name"]),item["icon"],item["timeout"],item["algo"])) + self.dataChanged.emit(self.index(0,0),self.index(size-1,0)) def save(self): dict=[] diff --git a/app.py b/app.py index d21c52ae88c4e6074902949a9d047af4d60b6827..5d53e0bea059266d67236f691cd244655ea70336 100644 --- a/app.py +++ b/app.py @@ -5,7 +5,7 @@ import OTPListModel qapp = QApplication() app = QQmlApplicationEngine() model = OTPListModel.OPTListModel() - +model.load() app.rootContext().setContextProperty("otpListModel", model) app.load("qml/main.qml") qapp.exec_()