diff --git a/src/bitmessageqt/__init__.py b/src/bitmessageqt/__init__.py
index a3bf7ec3..2ae7d00a 100644
--- a/src/bitmessageqt/__init__.py
+++ b/src/bitmessageqt/__init__.py
@@ -16,6 +16,7 @@ import shared
from bitmessageui import *
from namecoin import namecoinConnection, ensureNamecoinOptions
from newaddressdialog import *
+from addaddressdialog import *
from newsubscriptiondialog import *
from regenerateaddresses import *
from newchandialog import *
@@ -2063,15 +2064,15 @@ class MyForm(QtGui.QMainWindow):
self.ubuntuMessagingMenuUpdate(True, newItem, toLabel)
def click_pushButtonAddAddressBook(self):
- self.NewSubscriptionDialogInstance = NewSubscriptionDialog(self)
- if self.NewSubscriptionDialogInstance.exec_():
- if self.NewSubscriptionDialogInstance.ui.labelSubscriptionAddressCheck.text() == _translate("MainWindow", "Address is valid."):
+ self.AddAddressDialogInstance = AddAddressDialog(self)
+ if self.AddAddressDialogInstance.exec_():
+ if self.AddAddressDialogInstance.ui.labelAddressCheck.text() == _translate("MainWindow", "Address is valid."):
# First we must check to see if the address is already in the
# address book. The user cannot add it again or else it will
# cause problems when updating and deleting the entry.
address = addBMIfNotPresent(str(
- self.NewSubscriptionDialogInstance.ui.lineEditSubscriptionAddress.text()))
- label = self.NewSubscriptionDialogInstance.ui.newsubscriptionlabel.text().toUtf8()
+ self.AddAddressDialogInstance.ui.lineEditAddress.text()))
+ label = self.AddAddressDialogInstance.ui.newAddressLabel.text().toUtf8()
self.addEntryToAddressBook(address,label)
else:
self.statusBar().showMessage(_translate(
@@ -2120,7 +2121,7 @@ class MyForm(QtGui.QMainWindow):
def click_pushButtonAddSubscription(self):
self.NewSubscriptionDialogInstance = NewSubscriptionDialog(self)
if self.NewSubscriptionDialogInstance.exec_():
- if self.NewSubscriptionDialogInstance.ui.labelSubscriptionAddressCheck.text() != _translate("MainWindow", "Address is valid."):
+ if self.NewSubscriptionDialogInstance.ui.labelAddressCheck.text() != _translate("MainWindow", "Address is valid."):
self.statusBar().showMessage(_translate("MainWindow", "The address you entered was invalid. Ignoring it."))
return
address = addBMIfNotPresent(str(self.NewSubscriptionDialogInstance.ui.lineEditSubscriptionAddress.text()))
@@ -2130,6 +2131,23 @@ class MyForm(QtGui.QMainWindow):
return
label = self.NewSubscriptionDialogInstance.ui.newsubscriptionlabel.text().toUtf8()
self.addSubscription(address, label)
+ # Now, if the user wants to display old broadcasts, let's get them out of the inventory and put them
+ # in the objectProcessorQueue to be processed
+ if self.NewSubscriptionDialogInstance.ui.checkBoxDisplayMessagesAlreadyInInventory.isChecked():
+ status, addressVersion, streamNumber, ripe = decodeAddress(address)
+ shared.flushInventory()
+ doubleHashOfAddressData = hashlib.sha512(hashlib.sha512(encodeVarint(
+ addressVersion) + encodeVarint(streamNumber) + ripe).digest()).digest()
+ tag = doubleHashOfAddressData[32:]
+ queryreturn = sqlQuery(
+ '''select payload from inventory where objecttype='broadcast' and tag=?''', tag)
+ for row in queryreturn:
+ payload, = row
+ objectType = 'broadcast'
+ with shared.objectProcessorQueueSizeLock:
+ shared.objectProcessorQueueSize += len(payload)
+ shared.objectProcessorQueue.put((objectType,payload))
+ ####
def loadBlackWhiteList(self):
# Initialize the Blacklist or Whitelist table
@@ -2368,11 +2386,11 @@ class MyForm(QtGui.QMainWindow):
self.ui.tabWidget.setTabText(6, 'Whitelist')
def click_pushButtonAddBlacklist(self):
- self.NewBlacklistDialogInstance = NewSubscriptionDialog(self)
+ self.NewBlacklistDialogInstance = AddAddressDialog(self)
if self.NewBlacklistDialogInstance.exec_():
- if self.NewBlacklistDialogInstance.ui.labelSubscriptionAddressCheck.text() == _translate("MainWindow", "Address is valid."):
+ if self.NewBlacklistDialogInstance.ui.labelAddressCheck.text() == _translate("MainWindow", "Address is valid."):
address = addBMIfNotPresent(str(
- self.NewBlacklistDialogInstance.ui.lineEditSubscriptionAddress.text()))
+ self.NewBlacklistDialogInstance.ui.lineEditAddress.text()))
# First we must check to see if the address is already in the
# address book. The user cannot add it again or else it will
# cause problems when updating and deleting the entry.
@@ -2386,7 +2404,7 @@ class MyForm(QtGui.QMainWindow):
self.ui.tableWidgetBlacklist.setSortingEnabled(False)
self.ui.tableWidgetBlacklist.insertRow(0)
newItem = QtGui.QTableWidgetItem(unicode(
- self.NewBlacklistDialogInstance.ui.newsubscriptionlabel.text().toUtf8(), 'utf-8'))
+ self.NewBlacklistDialogInstance.ui.newAddressLabel.text().toUtf8(), 'utf-8'))
newItem.setIcon(avatarize(address))
self.ui.tableWidgetBlacklist.setItem(0, 0, newItem)
newItem = QtGui.QTableWidgetItem(address)
@@ -2394,7 +2412,7 @@ class MyForm(QtGui.QMainWindow):
QtCore.Qt.ItemIsSelectable | QtCore.Qt.ItemIsEnabled)
self.ui.tableWidgetBlacklist.setItem(0, 1, newItem)
self.ui.tableWidgetBlacklist.setSortingEnabled(True)
- t = (str(self.NewBlacklistDialogInstance.ui.newsubscriptionlabel.text().toUtf8()), address, True)
+ t = (str(self.NewBlacklistDialogInstance.ui.newAddressLabel.text().toUtf8()), address, True)
if shared.config.get('bitmessagesettings', 'blackwhitelist') == 'black':
sql = '''INSERT INTO blacklist VALUES (?,?,?)'''
else:
@@ -3465,6 +3483,40 @@ class SpecialAddressBehaviorDialog(QtGui.QDialog):
QtGui.QWidget.resize(self, QtGui.QWidget.sizeHint(self))
+class AddAddressDialog(QtGui.QDialog):
+
+ def __init__(self, parent):
+ QtGui.QWidget.__init__(self, parent)
+ self.ui = Ui_AddAddressDialog()
+ self.ui.setupUi(self)
+ self.parent = parent
+ QtCore.QObject.connect(self.ui.lineEditAddress, QtCore.SIGNAL(
+ "textChanged(QString)"), self.addressChanged)
+
+ def addressChanged(self, QString):
+ status, a, b, c = decodeAddress(str(QString))
+ if status == 'missingbm':
+ self.ui.labelAddressCheck.setText(_translate(
+ "MainWindow", "The address should start with ''BM-''"))
+ elif status == 'checksumfailed':
+ self.ui.labelAddressCheck.setText(_translate(
+ "MainWindow", "The address is not typed or copied correctly (the checksum failed)."))
+ elif status == 'versiontoohigh':
+ self.ui.labelAddressCheck.setText(_translate(
+ "MainWindow", "The version number of this address is higher than this software can support. Please upgrade Bitmessage."))
+ elif status == 'invalidcharacters':
+ self.ui.labelAddressCheck.setText(_translate(
+ "MainWindow", "The address contains invalid characters."))
+ elif status == 'ripetooshort':
+ self.ui.labelAddressCheck.setText(_translate(
+ "MainWindow", "Some data encoded in the address is too short."))
+ elif status == 'ripetoolong':
+ self.ui.labelAddressCheck.setText(_translate(
+ "MainWindow", "Some data encoded in the address is too long."))
+ elif status == 'success':
+ self.ui.labelAddressCheck.setText(
+ _translate("MainWindow", "Address is valid."))
+
class NewSubscriptionDialog(QtGui.QDialog):
def __init__(self, parent):
@@ -3473,31 +3525,56 @@ class NewSubscriptionDialog(QtGui.QDialog):
self.ui.setupUi(self)
self.parent = parent
QtCore.QObject.connect(self.ui.lineEditSubscriptionAddress, QtCore.SIGNAL(
- "textChanged(QString)"), self.subscriptionAddressChanged)
+ "textChanged(QString)"), self.addressChanged)
+ self.ui.checkBoxDisplayMessagesAlreadyInInventory.setText(
+ _translate("MainWindow", "Enter an address above."))
- def subscriptionAddressChanged(self, QString):
- status, a, b, c = decodeAddress(str(QString))
+ def addressChanged(self, QString):
+ self.ui.checkBoxDisplayMessagesAlreadyInInventory.setEnabled(False)
+ self.ui.checkBoxDisplayMessagesAlreadyInInventory.setChecked(False)
+ status, addressVersion, streamNumber, ripe = decodeAddress(str(QString))
if status == 'missingbm':
- self.ui.labelSubscriptionAddressCheck.setText(_translate(
+ self.ui.labelAddressCheck.setText(_translate(
"MainWindow", "The address should start with ''BM-''"))
elif status == 'checksumfailed':
- self.ui.labelSubscriptionAddressCheck.setText(_translate(
+ self.ui.labelAddressCheck.setText(_translate(
"MainWindow", "The address is not typed or copied correctly (the checksum failed)."))
elif status == 'versiontoohigh':
- self.ui.labelSubscriptionAddressCheck.setText(_translate(
+ self.ui.labelAddressCheck.setText(_translate(
"MainWindow", "The version number of this address is higher than this software can support. Please upgrade Bitmessage."))
elif status == 'invalidcharacters':
- self.ui.labelSubscriptionAddressCheck.setText(_translate(
+ self.ui.labelAddressCheck.setText(_translate(
"MainWindow", "The address contains invalid characters."))
elif status == 'ripetooshort':
- self.ui.labelSubscriptionAddressCheck.setText(_translate(
+ self.ui.labelAddressCheck.setText(_translate(
"MainWindow", "Some data encoded in the address is too short."))
elif status == 'ripetoolong':
- self.ui.labelSubscriptionAddressCheck.setText(_translate(
+ self.ui.labelAddressCheck.setText(_translate(
"MainWindow", "Some data encoded in the address is too long."))
elif status == 'success':
- self.ui.labelSubscriptionAddressCheck.setText(
+ self.ui.labelAddressCheck.setText(
_translate("MainWindow", "Address is valid."))
+ if addressVersion <= 3:
+ self.ui.checkBoxDisplayMessagesAlreadyInInventory.setText(
+ _translate("MainWindow", "Address is an old type. We cannot display its past broadcasts."))
+ else:
+ shared.flushInventory()
+ doubleHashOfAddressData = hashlib.sha512(hashlib.sha512(encodeVarint(
+ addressVersion) + encodeVarint(streamNumber) + ripe).digest()).digest()
+ tag = doubleHashOfAddressData[32:]
+ queryreturn = sqlQuery(
+ '''select hash from inventory where objecttype='broadcast' and tag=?''', tag)
+ if len(queryreturn) == 0:
+ self.ui.checkBoxDisplayMessagesAlreadyInInventory.setText(
+ _translate("MainWindow", "There are no recent broadcasts from this address to display."))
+ elif len(queryreturn) == 1:
+ self.ui.checkBoxDisplayMessagesAlreadyInInventory.setEnabled(True)
+ self.ui.checkBoxDisplayMessagesAlreadyInInventory.setText(
+ _translate("MainWindow", "Display the %1 recent broadcast from this address.").arg(str(len(queryreturn))))
+ else:
+ self.ui.checkBoxDisplayMessagesAlreadyInInventory.setEnabled(True)
+ self.ui.checkBoxDisplayMessagesAlreadyInInventory.setText(
+ _translate("MainWindow", "Display the %1 recent broadcasts from this address.").arg(str(len(queryreturn))))
class NewAddressDialog(QtGui.QDialog):
diff --git a/src/bitmessageqt/addaddressdialog.py b/src/bitmessageqt/addaddressdialog.py
new file mode 100644
index 00000000..5ed19e0a
--- /dev/null
+++ b/src/bitmessageqt/addaddressdialog.py
@@ -0,0 +1,65 @@
+# -*- coding: utf-8 -*-
+
+# Form implementation generated from reading ui file 'addaddressdialog.ui'
+#
+# Created: Sat Nov 30 20:35:38 2013
+# by: PyQt4 UI code generator 4.10.3
+#
+# WARNING! All changes made in this file will be lost!
+
+from PyQt4 import QtCore, QtGui
+
+try:
+ _fromUtf8 = QtCore.QString.fromUtf8
+except AttributeError:
+ def _fromUtf8(s):
+ return s
+
+try:
+ _encoding = QtGui.QApplication.UnicodeUTF8
+ def _translate(context, text, disambig):
+ return QtGui.QApplication.translate(context, text, disambig, _encoding)
+except AttributeError:
+ def _translate(context, text, disambig):
+ return QtGui.QApplication.translate(context, text, disambig)
+
+class Ui_AddAddressDialog(object):
+ def setupUi(self, AddAddressDialog):
+ AddAddressDialog.setObjectName(_fromUtf8("AddAddressDialog"))
+ AddAddressDialog.resize(368, 162)
+ self.formLayout = QtGui.QFormLayout(AddAddressDialog)
+ self.formLayout.setFieldGrowthPolicy(QtGui.QFormLayout.AllNonFixedFieldsGrow)
+ self.formLayout.setObjectName(_fromUtf8("formLayout"))
+ self.label_2 = QtGui.QLabel(AddAddressDialog)
+ self.label_2.setObjectName(_fromUtf8("label_2"))
+ self.formLayout.setWidget(0, QtGui.QFormLayout.SpanningRole, self.label_2)
+ self.newAddressLabel = QtGui.QLineEdit(AddAddressDialog)
+ self.newAddressLabel.setObjectName(_fromUtf8("newAddressLabel"))
+ self.formLayout.setWidget(2, QtGui.QFormLayout.SpanningRole, self.newAddressLabel)
+ self.label = QtGui.QLabel(AddAddressDialog)
+ self.label.setObjectName(_fromUtf8("label"))
+ self.formLayout.setWidget(4, QtGui.QFormLayout.LabelRole, self.label)
+ self.lineEditAddress = QtGui.QLineEdit(AddAddressDialog)
+ self.lineEditAddress.setObjectName(_fromUtf8("lineEditAddress"))
+ self.formLayout.setWidget(5, QtGui.QFormLayout.SpanningRole, self.lineEditAddress)
+ self.labelAddressCheck = QtGui.QLabel(AddAddressDialog)
+ self.labelAddressCheck.setText(_fromUtf8(""))
+ self.labelAddressCheck.setWordWrap(True)
+ self.labelAddressCheck.setObjectName(_fromUtf8("labelAddressCheck"))
+ self.formLayout.setWidget(6, QtGui.QFormLayout.SpanningRole, self.labelAddressCheck)
+ self.buttonBox = QtGui.QDialogButtonBox(AddAddressDialog)
+ self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
+ self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Ok)
+ self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
+ self.formLayout.setWidget(7, QtGui.QFormLayout.FieldRole, self.buttonBox)
+
+ self.retranslateUi(AddAddressDialog)
+ QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("accepted()")), AddAddressDialog.accept)
+ QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("rejected()")), AddAddressDialog.reject)
+ QtCore.QMetaObject.connectSlotsByName(AddAddressDialog)
+
+ def retranslateUi(self, AddAddressDialog):
+ AddAddressDialog.setWindowTitle(_translate("AddAddressDialog", "Add new entry", None))
+ self.label_2.setText(_translate("AddAddressDialog", "Label", None))
+ self.label.setText(_translate("AddAddressDialog", "Address", None))
+
diff --git a/src/bitmessageqt/addaddressdialog.ui b/src/bitmessageqt/addaddressdialog.ui
new file mode 100644
index 00000000..d7963e0a
--- /dev/null
+++ b/src/bitmessageqt/addaddressdialog.ui
@@ -0,0 +1,97 @@
+
+
+ AddAddressDialog
+
+
+
+ 0
+ 0
+ 368
+ 162
+
+
+
+ Add new entry
+
+
+
+ QFormLayout::AllNonFixedFieldsGrow
+
+ -
+
+
+ Label
+
+
+
+ -
+
+
+ -
+
+
+ Address
+
+
+
+ -
+
+
+ -
+
+
+
+
+
+ true
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+ QDialogButtonBox::Cancel|QDialogButtonBox::Ok
+
+
+
+
+
+
+
+
+ buttonBox
+ accepted()
+ AddAddressDialog
+ accept()
+
+
+ 360
+ 234
+
+
+ 157
+ 256
+
+
+
+
+ buttonBox
+ rejected()
+ AddAddressDialog
+ reject()
+
+
+ 360
+ 240
+
+
+ 286
+ 256
+
+
+
+
+
diff --git a/src/bitmessageqt/newsubscriptiondialog.py b/src/bitmessageqt/newsubscriptiondialog.py
index b849d50f..d71eec0c 100644
--- a/src/bitmessageqt/newsubscriptiondialog.py
+++ b/src/bitmessageqt/newsubscriptiondialog.py
@@ -2,8 +2,8 @@
# Form implementation generated from reading ui file 'newsubscriptiondialog.ui'
#
-# Created: Fri Oct 19 15:30:41 2012
-# by: PyQt4 UI code generator 4.9.4
+# Created: Sat Nov 30 21:53:38 2013
+# by: PyQt4 UI code generator 4.10.3
#
# WARNING! All changes made in this file will be lost!
@@ -12,41 +12,49 @@ from PyQt4 import QtCore, QtGui
try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
- _fromUtf8 = lambda s: s
+ def _fromUtf8(s):
+ return s
+
+try:
+ _encoding = QtGui.QApplication.UnicodeUTF8
+ def _translate(context, text, disambig):
+ return QtGui.QApplication.translate(context, text, disambig, _encoding)
+except AttributeError:
+ def _translate(context, text, disambig):
+ return QtGui.QApplication.translate(context, text, disambig)
class Ui_NewSubscriptionDialog(object):
def setupUi(self, NewSubscriptionDialog):
NewSubscriptionDialog.setObjectName(_fromUtf8("NewSubscriptionDialog"))
- NewSubscriptionDialog.resize(368, 192)
+ NewSubscriptionDialog.resize(368, 173)
self.formLayout = QtGui.QFormLayout(NewSubscriptionDialog)
- self.formLayout.setFieldGrowthPolicy(QtGui.QFormLayout.AllNonFixedFieldsGrow)
self.formLayout.setObjectName(_fromUtf8("formLayout"))
self.label_2 = QtGui.QLabel(NewSubscriptionDialog)
self.label_2.setObjectName(_fromUtf8("label_2"))
- self.formLayout.setWidget(0, QtGui.QFormLayout.SpanningRole, self.label_2)
+ self.formLayout.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_2)
self.newsubscriptionlabel = QtGui.QLineEdit(NewSubscriptionDialog)
self.newsubscriptionlabel.setObjectName(_fromUtf8("newsubscriptionlabel"))
- self.formLayout.setWidget(2, QtGui.QFormLayout.SpanningRole, self.newsubscriptionlabel)
+ self.formLayout.setWidget(1, QtGui.QFormLayout.SpanningRole, self.newsubscriptionlabel)
self.label = QtGui.QLabel(NewSubscriptionDialog)
self.label.setObjectName(_fromUtf8("label"))
- self.formLayout.setWidget(4, QtGui.QFormLayout.LabelRole, self.label)
- spacerItem = QtGui.QSpacerItem(302, 10, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
- self.formLayout.setItem(4, QtGui.QFormLayout.FieldRole, spacerItem)
+ self.formLayout.setWidget(2, QtGui.QFormLayout.LabelRole, self.label)
self.lineEditSubscriptionAddress = QtGui.QLineEdit(NewSubscriptionDialog)
self.lineEditSubscriptionAddress.setObjectName(_fromUtf8("lineEditSubscriptionAddress"))
- self.formLayout.setWidget(5, QtGui.QFormLayout.SpanningRole, self.lineEditSubscriptionAddress)
+ self.formLayout.setWidget(3, QtGui.QFormLayout.SpanningRole, self.lineEditSubscriptionAddress)
+ self.labelAddressCheck = QtGui.QLabel(NewSubscriptionDialog)
+ self.labelAddressCheck.setText(_fromUtf8(""))
+ self.labelAddressCheck.setWordWrap(True)
+ self.labelAddressCheck.setObjectName(_fromUtf8("labelAddressCheck"))
+ self.formLayout.setWidget(4, QtGui.QFormLayout.SpanningRole, self.labelAddressCheck)
+ self.checkBoxDisplayMessagesAlreadyInInventory = QtGui.QCheckBox(NewSubscriptionDialog)
+ self.checkBoxDisplayMessagesAlreadyInInventory.setEnabled(False)
+ self.checkBoxDisplayMessagesAlreadyInInventory.setObjectName(_fromUtf8("checkBoxDisplayMessagesAlreadyInInventory"))
+ self.formLayout.setWidget(5, QtGui.QFormLayout.SpanningRole, self.checkBoxDisplayMessagesAlreadyInInventory)
self.buttonBox = QtGui.QDialogButtonBox(NewSubscriptionDialog)
self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Ok)
self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
- self.formLayout.setWidget(8, QtGui.QFormLayout.FieldRole, self.buttonBox)
- spacerItem1 = QtGui.QSpacerItem(20, 10, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
- self.formLayout.setItem(7, QtGui.QFormLayout.FieldRole, spacerItem1)
- self.labelSubscriptionAddressCheck = QtGui.QLabel(NewSubscriptionDialog)
- self.labelSubscriptionAddressCheck.setText(_fromUtf8(""))
- self.labelSubscriptionAddressCheck.setWordWrap(True)
- self.labelSubscriptionAddressCheck.setObjectName(_fromUtf8("labelSubscriptionAddressCheck"))
- self.formLayout.setWidget(6, QtGui.QFormLayout.SpanningRole, self.labelSubscriptionAddressCheck)
+ self.formLayout.setWidget(6, QtGui.QFormLayout.FieldRole, self.buttonBox)
self.retranslateUi(NewSubscriptionDialog)
QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("accepted()")), NewSubscriptionDialog.accept)
@@ -54,7 +62,8 @@ class Ui_NewSubscriptionDialog(object):
QtCore.QMetaObject.connectSlotsByName(NewSubscriptionDialog)
def retranslateUi(self, NewSubscriptionDialog):
- NewSubscriptionDialog.setWindowTitle(QtGui.QApplication.translate("NewSubscriptionDialog", "Add new entry", None, QtGui.QApplication.UnicodeUTF8))
- self.label_2.setText(QtGui.QApplication.translate("NewSubscriptionDialog", "Label", None, QtGui.QApplication.UnicodeUTF8))
- self.label.setText(QtGui.QApplication.translate("NewSubscriptionDialog", "Address", None, QtGui.QApplication.UnicodeUTF8))
+ NewSubscriptionDialog.setWindowTitle(_translate("NewSubscriptionDialog", "Add new entry", None))
+ self.label_2.setText(_translate("NewSubscriptionDialog", "Label", None))
+ self.label.setText(_translate("NewSubscriptionDialog", "Address", None))
+ self.checkBoxDisplayMessagesAlreadyInInventory.setText(_translate("NewSubscriptionDialog", "CheckBox", None))
diff --git a/src/bitmessageqt/newsubscriptiondialog.ui b/src/bitmessageqt/newsubscriptiondialog.ui
index 84475e09..ed8615f4 100644
--- a/src/bitmessageqt/newsubscriptiondialog.ui
+++ b/src/bitmessageqt/newsubscriptiondialog.ui
@@ -7,50 +7,54 @@
0
0
368
- 192
+ 173
Add new entry
-
- QFormLayout::AllNonFixedFieldsGrow
-
- -
+
-
Label
- -
+
-
- -
+
-
Address
- -
-
-
- Qt::Vertical
-
-
-
- 302
- 10
-
-
-
-
- -
+
-
- -
+
-
+
+
+
+
+
+ true
+
+
+
+ -
+
+
+ false
+
+
+ CheckBox
+
+
+
+ -
Qt::Horizontal
@@ -60,29 +64,6 @@
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 10
-
-
-
-
- -
-
-
-
-
-
- true
-
-
-
diff --git a/src/shared.py b/src/shared.py
index bddd8410..9350fdaf 100644
--- a/src/shared.py
+++ b/src/shared.py
@@ -708,13 +708,18 @@ def checkAndShareBroadcastWithPeers(data):
return
broadcastVersion, broadcastVersionLength = decodeVarint(
data[readPosition:readPosition + 10])
+ readPosition += broadcastVersionLength
if broadcastVersion >= 2:
- streamNumber, streamNumberLength = decodeVarint(data[
- readPosition + broadcastVersionLength:readPosition + broadcastVersionLength + 10])
+ streamNumber, streamNumberLength = decodeVarint(data[readPosition:readPosition + 10])
+ readPosition += streamNumberLength
if not streamNumber in streamsInWhichIAmParticipating:
print 'The streamNumber', streamNumber, 'isn\'t one we are interested in.'
return
-
+ if broadcastVersion >= 3:
+ tag = data[readPosition:readPosition+32]
+ print 'debugging. in broadcast, tag is:', tag.encode('hex')
+ else:
+ tag = ''
shared.numberOfInventoryLookupsPerformed += 1
inventoryLock.acquire()
inventoryHash = calculateInventoryHash(data)
@@ -729,7 +734,7 @@ def checkAndShareBroadcastWithPeers(data):
# It is valid. Let's let our peers know about it.
objectType = 'broadcast'
inventory[inventoryHash] = (
- objectType, streamNumber, data, embeddedTime,'')
+ objectType, streamNumber, data, embeddedTime, tag)
inventorySets[streamNumber].add(inventoryHash)
inventoryLock.release()
# This object is valid. Forward it to peers.