notifications fix - busy status
This commit is contained in:
parent
7d7efa6acd
commit
43a49ca570
3 changed files with 22 additions and 25 deletions
|
@ -61,7 +61,7 @@ def friend_status(tox, friend_num, new_status, user_data):
|
||||||
print "Friend's #{} status changed! New status: {}".format(friend_num, new_status)
|
print "Friend's #{} status changed! New status: {}".format(friend_num, new_status)
|
||||||
profile = Profile.get_instance()
|
profile = Profile.get_instance()
|
||||||
friend = profile.get_friend_by_number(friend_num)
|
friend = profile.get_friend_by_number(friend_num)
|
||||||
if friend.status is None and Settings.get_instance()['sound_notifications']:
|
if friend.status is None and Settings.get_instance()['sound_notifications'] and profile.status != TOX_USER_STATUS['BUSY']:
|
||||||
sound_notification(SOUND_NOTIFICATION['FRIEND_CONNECTION_STATUS'])
|
sound_notification(SOUND_NOTIFICATION['FRIEND_CONNECTION_STATUS'])
|
||||||
invoke_in_main_thread(friend.set_status, new_status)
|
invoke_in_main_thread(friend.set_status, new_status)
|
||||||
invoke_in_main_thread(profile.update_filtration)
|
invoke_in_main_thread(profile.update_filtration)
|
||||||
|
@ -77,7 +77,7 @@ def friend_connection_status(tox, friend_num, new_status, user_data):
|
||||||
if new_status == TOX_CONNECTION['NONE']:
|
if new_status == TOX_CONNECTION['NONE']:
|
||||||
invoke_in_main_thread(friend.set_status, None)
|
invoke_in_main_thread(friend.set_status, None)
|
||||||
invoke_in_main_thread(profile.update_filtration)
|
invoke_in_main_thread(profile.update_filtration)
|
||||||
if Settings.get_instance()['sound_notifications']:
|
if Settings.get_instance()['sound_notifications'] and profile.status != TOX_USER_STATUS['BUSY']:
|
||||||
sound_notification(SOUND_NOTIFICATION['FRIEND_CONNECTION_STATUS'])
|
sound_notification(SOUND_NOTIFICATION['FRIEND_CONNECTION_STATUS'])
|
||||||
elif friend.status is None:
|
elif friend.status is None:
|
||||||
invoke_in_main_thread(profile.send_avatar, friend_num)
|
invoke_in_main_thread(profile.send_avatar, friend_num)
|
||||||
|
@ -118,9 +118,9 @@ def friend_message(window, tray):
|
||||||
invoke_in_main_thread(profile.new_message, friend_number, message_type, message)
|
invoke_in_main_thread(profile.new_message, friend_number, message_type, message)
|
||||||
if not window.isActiveWindow():
|
if not window.isActiveWindow():
|
||||||
friend = profile.get_friend_by_number(friend_number)
|
friend = profile.get_friend_by_number(friend_number)
|
||||||
if settings['notifications']:
|
if settings['notifications'] and profile.status != TOX_USER_STATUS['BUSY']:
|
||||||
invoke_in_main_thread(tray_notification, friend.name, message.decode('utf8'), tray, window)
|
invoke_in_main_thread(tray_notification, friend.name, message.decode('utf8'), tray, window)
|
||||||
if settings['sound_notifications']:
|
if settings['sound_notifications'] and profile.status != TOX_USER_STATUS['BUSY']:
|
||||||
sound_notification(SOUND_NOTIFICATION['MESSAGE'])
|
sound_notification(SOUND_NOTIFICATION['MESSAGE'])
|
||||||
return wrapped
|
return wrapped
|
||||||
|
|
||||||
|
@ -155,9 +155,9 @@ def tox_file_recv(window, tray):
|
||||||
file_name)
|
file_name)
|
||||||
if not window.isActiveWindow():
|
if not window.isActiveWindow():
|
||||||
friend = profile.get_friend_by_number(friend_number)
|
friend = profile.get_friend_by_number(friend_number)
|
||||||
if settings['notifications']:
|
if settings['notifications'] and profile.status != TOX_USER_STATUS['BUSY']:
|
||||||
invoke_in_main_thread(tray_notification, 'File from ' + friend.name, file_name, tray, window)
|
invoke_in_main_thread(tray_notification, 'File from ' + friend.name, file_name, tray, window)
|
||||||
if settings['sound_notifications']:
|
if settings['sound_notifications'] and profile.status != TOX_USER_STATUS['BUSY']:
|
||||||
sound_notification(SOUND_NOTIFICATION['FILE_TRANSFER'])
|
sound_notification(SOUND_NOTIFICATION['FILE_TRANSFER'])
|
||||||
else: # AVATAR
|
else: # AVATAR
|
||||||
print 'Avatar'
|
print 'Avatar'
|
||||||
|
|
18
src/menu.py
18
src/menu.py
|
@ -337,19 +337,15 @@ class NotificationsSettings(CenteredWidget):
|
||||||
|
|
||||||
def initUI(self):
|
def initUI(self):
|
||||||
self.setObjectName("notificationsForm")
|
self.setObjectName("notificationsForm")
|
||||||
self.resize(300, 200)
|
self.resize(350, 200)
|
||||||
self.setMinimumSize(QtCore.QSize(300, 200))
|
self.setMinimumSize(QtCore.QSize(350, 200))
|
||||||
self.setMaximumSize(QtCore.QSize(300, 200))
|
self.setMaximumSize(QtCore.QSize(350, 200))
|
||||||
self.setBaseSize(QtCore.QSize(300, 200))
|
|
||||||
self.enableNotifications = QtGui.QCheckBox(self)
|
self.enableNotifications = QtGui.QCheckBox(self)
|
||||||
self.enableNotifications.setGeometry(QtCore.QRect(30, 20, 241, 22))
|
self.enableNotifications.setGeometry(QtCore.QRect(10, 20, 270, 20))
|
||||||
self.enableNotifications.setObjectName("enableNotifications")
|
|
||||||
self.soundNotifications = QtGui.QCheckBox(self)
|
|
||||||
self.soundNotifications.setGeometry(QtCore.QRect(30, 100, 231, 22))
|
|
||||||
self.soundNotifications.setObjectName("sound_notifications")
|
|
||||||
self.callsSound = QtGui.QCheckBox(self)
|
self.callsSound = QtGui.QCheckBox(self)
|
||||||
self.callsSound.setGeometry(QtCore.QRect(30, 60, 231, 22))
|
self.callsSound.setGeometry(QtCore.QRect(10, 120, 270, 20))
|
||||||
self.callsSound.setObjectName("calls_sound")
|
self.soundNotifications = QtGui.QCheckBox(self)
|
||||||
|
self.soundNotifications.setGeometry(QtCore.QRect(10, 70, 270, 20))
|
||||||
s = Settings.get_instance()
|
s = Settings.get_instance()
|
||||||
self.enableNotifications.setChecked(s['notifications'])
|
self.enableNotifications.setChecked(s['notifications'])
|
||||||
self.soundNotifications.setChecked(s['sound_notifications'])
|
self.soundNotifications.setChecked(s['sound_notifications'])
|
||||||
|
|
|
@ -63,14 +63,6 @@ QProgressBar::chunk:horizontal {
|
||||||
background-color: qlineargradient(spread:reflect, x1:1, y1:0.545, x2:1, y2:0, stop:0 rgba(28, 66, 111, 255), stop:1 rgba(37, 87, 146, 255));
|
background-color: qlineargradient(spread:reflect, x1:1, y1:0.545, x2:1, y2:0, stop:0 rgba(28, 66, 111, 255), stop:1 rgba(37, 87, 146, 255));
|
||||||
}
|
}
|
||||||
|
|
||||||
QCheckBox
|
|
||||||
{
|
|
||||||
spacing: 5px;
|
|
||||||
outline: none;
|
|
||||||
color: #bbb;
|
|
||||||
margin-bottom: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
QCheckBox:disabled
|
QCheckBox:disabled
|
||||||
{
|
{
|
||||||
color: #777777;
|
color: #777777;
|
||||||
|
@ -1268,3 +1260,12 @@ QPushButton:hover
|
||||||
{
|
{
|
||||||
color: #A9A9A9;
|
color: #A9A9A9;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QCheckBox
|
||||||
|
{
|
||||||
|
spacing: 5px;
|
||||||
|
outline: none;
|
||||||
|
color: #bbb;
|
||||||
|
margin-bottom: 2px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
Loading…
Reference in a new issue