diff --git a/src/mainscreen.py b/src/mainscreen.py
index 227619d..943d761 100644
--- a/src/mainscreen.py
+++ b/src/mainscreen.py
@@ -16,6 +16,8 @@ class MainWindow(QtGui.QMainWindow):
self.tray = tray
self.setAcceptDrops(True)
self.initUI(tox)
+ if settings.Settings.get_instance()['show_welcome_screen']:
+ self.ws = WelcomeScreen()
def setup_menu(self, MainWindow):
self.menubar = QtGui.QMenuBar(MainWindow)
diff --git a/src/mainscreen_widgets.py b/src/mainscreen_widgets.py
index 79d9838..f12f521 100644
--- a/src/mainscreen_widgets.py
+++ b/src/mainscreen_widgets.py
@@ -2,7 +2,7 @@ try:
from PySide import QtCore, QtGui
except ImportError:
from PyQt4 import QtCore, QtGui
-from widgets import RubberBand, create_menu, QRightClickButton
+from widgets import RubberBand, create_menu, QRightClickButton, CenteredWidget
from profile import Profile
import smileys
import util
@@ -312,3 +312,67 @@ class StickerWindow(QtGui.QWidget):
self.close()
+class WelcomeScreen(CenteredWidget):
+
+ def __init__(self):
+ super().__init__()
+ self.setMaximumSize(250, 200)
+ self.setMinimumSize(250, 200)
+ self.center()
+ self.setAttribute(QtCore.Qt.WA_DeleteOnClose)
+ self.text = QtGui.QTextBrowser(self)
+ self.text.setGeometry(QtCore.QRect(0, 0, 250, 170))
+ self.text.setOpenExternalLinks(True)
+ self.checkbox = QtGui.QCheckBox(self)
+ self.checkbox.setGeometry(QtCore.QRect(5, 170, 240, 30))
+ self.checkbox.setText(QtGui.QApplication.translate('WelcomeScreen', "Don't show again",
+ None, QtGui.QApplication.UnicodeUTF8))
+ self.setWindowTitle(QtGui.QApplication.translate('WelcomeScreen', 'Tip of the day',
+ None, QtGui.QApplication.UnicodeUTF8))
+ import random
+ num = random.randint(0, 8)
+ if num == 0:
+ text = QtGui.QApplication.translate('WelcomeScreen', 'Press Esc if you want hide app to tray.',
+ None, QtGui.QApplication.UnicodeUTF8)
+ elif num == 1:
+ text = QtGui.QApplication.translate('WelcomeScreen',
+ 'Right click on screenshot button hides app to tray during screenshot.',
+ None, QtGui.QApplication.UnicodeUTF8)
+ elif num == 2:
+ text = QtGui.QApplication.translate('WelcomeScreen',
+ 'You can use Tox over Tor. For more info read this post',
+ None, QtGui.QApplication.UnicodeUTF8)
+ elif num == 3:
+ text = QtGui.QApplication.translate('WelcomeScreen',
+ 'Use Settings -> Interface to customize interface.',
+ None, QtGui.QApplication.UnicodeUTF8)
+ elif num == 4:
+ text = QtGui.QApplication.translate('WelcomeScreen',
+ 'Set profile password via Profile -> Settings. Password allows Toxygen encrypt your history and settings.',
+ None, QtGui.QApplication.UnicodeUTF8)
+ elif num == 5:
+ text = QtGui.QApplication.translate('WelcomeScreen',
+ 'Since v0.1.3 Toxygen supports plugins. Read more',
+ None, QtGui.QApplication.UnicodeUTF8)
+ elif num == 6:
+ text = QtGui.QApplication.translate('WelcomeScreen',
+ 'New in Toxygen v0.2.2: Users can lock application using profile password. Compact contact list support Bug fixes Tox DNS improvements',
+ None, QtGui.QApplication.UnicodeUTF8)
+ elif num == 7:
+ text = QtGui.QApplication.translate('WelcomeScreen',
+ 'Toxygen supports faux offline messages and file transfers. Send message or file to offline friend and he will get it later.',
+ None, QtGui.QApplication.UnicodeUTF8)
+ else:
+ text = QtGui.QApplication.translate('WelcomeScreen',
+ 'Set new NoSpam to avoid spam friend requests: Profile -> Settings -> Set new NoSpam.',
+ None, QtGui.QApplication.UnicodeUTF8)
+ self.text.setHtml(text)
+ self.checkbox.stateChanged.connect(self.not_show)
+ QtCore.QTimer.singleShot(1000, self.show)
+
+ def not_show(self):
+ import settings
+ s = settings.Settings.get_instance()
+ s['show_welcome_screen'] = False
+ s.save()
+
diff --git a/src/profile.py b/src/profile.py
index f934eae..9ca41fe 100644
--- a/src/profile.py
+++ b/src/profile.py
@@ -229,6 +229,7 @@ class Profile(contact.Contact, Singleton):
self._screen.account_avatar.setScaledContents(False)
self._screen.account_avatar.setPixmap(pixmap.scaled(64, 64, QtCore.Qt.KeepAspectRatio))
self._screen.account_avatar.repaint() # comment?
+ self.update_filtration()
except Exception as ex: # no friend found. ignore
log('Friend value: ' + str(value))
log('Error: ' + str(ex))
@@ -778,6 +779,7 @@ class Profile(contact.Contact, Singleton):
self.status = None
for friend in self._friends:
friend.status = None
+ self.update_filtration()
def close(self):
if hasattr(self, '_call'):
diff --git a/src/settings.py b/src/settings.py
index 7b8f4ab..69ed458 100644
--- a/src/settings.py
+++ b/src/settings.py
@@ -125,7 +125,8 @@ class Settings(dict, Singleton):
'message_font_size': 14,
'unread_color': 'red',
'save_unsent_only': False,
- 'compact_mode': False
+ 'compact_mode': False,
+ 'show_welcome_screen': True
}
@staticmethod
diff --git a/src/translations/en_GB.ts b/src/translations/en_GB.ts
index ece01c4..cb8914e 100644
--- a/src/translations/en_GB.ts
+++ b/src/translations/en_GB.ts
@@ -84,103 +84,103 @@ can produce IP leak
MainWindow
-
+ Profile
-
+ Settings
-
+ About
-
+ Add contact
-
+ Privacy
-
+ Interface
-
+ Notifications
-
+ Network
-
+ About program
-
+ User {} wants to add you to contact list. Message:
{}
-
+ Friend request
-
+ Choose fileChoose file
-
+ Disallow auto accept
-
+ Allow auto accept
-
+ Set alias
-
+ Clear history
-
+ Copy public key
-
+ Remove friend
-
+ Enter new alias for friend {} or leave empty to use friend's name:Enter new alias for friend {} or leave empty to use friend's name:
-
+ AudioAudio
@@ -190,19 +190,19 @@ can produce IP leak
Find contact
-
+ Friend addedFriend added
-
+ Toxygen is Tox client written on Python.
Version: Toxygen is Tox client written on Python.
Version:
-
+ Friend added without sending friend requestFriend added without sending friend request
@@ -222,47 +222,47 @@ Version:
Send file
-
+ Send messageSend message
-
+ Start audio call with friendStart audio call with friend
-
+ Plugins
-
+ List of plugins
-
+ Search
-
+ All
-
+ Online
-
+ Notes
-
+ Notes about user
@@ -312,7 +312,7 @@ Version:
-
+ User {} is now known as {}
@@ -322,17 +322,17 @@ Version:
-
+ Lock
-
+ Cannot lock app
-
+ Error. Profile password is not set.
@@ -572,6 +572,64 @@ Version:
+
+ WelcomeScreen
+
+
+ Don't show again
+
+
+
+
+ Tip of the day
+
+
+
+
+ Press Esc if you want hide app to tray.
+
+
+
+
+ Right click on screenshot button hides app to tray during screenshot
+
+
+
+
+ You can use Tox over Tor. For more info read <a href="https://wiki.tox.chat/users/tox_over_tor_tot">this post</a>
+
+
+
+
+ Use Settings -> Interface to customize interface
+
+
+
+
+ Set profile password via Profile -> Settings. Password allows Toxygen encrypt your history and settings.
+
+
+
+
+ Since v0.1.3 Toxygen supports plugins. <a href="https://github.com/xveduk/toxygen/blob/master/docs/plugins.md">Read more</a>
+
+
+
+
+ New in Toxygen v0.2.2:<br>Users can lock application using profile password.<br>Compact contact list support<br>Bug fixes<br>Tox DNS improvements
+
+
+
+
+ Toxygen supports faux offline messages and file transfers. Send message or file to offline friend and he will get it later
+
+
+
+
+ Set new NoSpam to avoid spam friend requests: Profile -> Settings -> Set new NoSpam
+
+
+audioSettingsForm
@@ -593,32 +651,32 @@ Version:
incoming_call
-
+ Incoming video callIncoming video call
-
+ Incoming audio callIncoming audio call
-
+ Outgoing video call
-
+ Outgoing audio call
-
+ Call declined
-
+ Call finished
diff --git a/src/translations/fr_FR.ts b/src/translations/fr_FR.ts
index 48998fa..a4f443c 100644
--- a/src/translations/fr_FR.ts
+++ b/src/translations/fr_FR.ts
@@ -84,58 +84,58 @@ can produce IP leak
MainWindow
-
+ ProfileProfile
-
+ SettingsParamêtres
-
+ AboutÀ Propos
-
+ Add contactRajouter un contact
-
+ PrivacyConfidentialité
-
+ InterfaceInterface
-
+ NotificationsNotifications
-
+ NetworkRéseau
-
+ About programÀ propos du programme
-
+ User {} wants to add you to contact list. Message:
{}L'Utilisateur {} veut vout rajouter à sa liste de contacts. Message : {}
-
+ Friend requestDemande d'amis
@@ -145,47 +145,47 @@ can produce IP leak
Toxygen est un client Tox écris en Python 2.7. Version :
-
+ Choose fileChoisir un fichier
-
+ Disallow auto acceptDésactiver l'auto-réception
-
+ Allow auto acceptActiver l'auto-réception
-
+ Set aliasDéfinir un alias
-
+ Clear historyVider l'historique
-
+ Copy public keyCopier la clé publique
-
+ Remove friendRetirer un ami
-
+ Enter new alias for friend {} or leave empty to use friend's name:Entrez un nouvel alias pour l'ami {} ou laissez vide pour garder son nom de base :
-
+ AudioAudio
@@ -195,19 +195,19 @@ can produce IP leak
Trouver le contact
-
+ Friend addedAmi rajouté
-
+ Toxygen is Tox client written on Python.
Version: Toxygen est un client Tox écrit en Python.
Version :
-
+ Friend added without sending friend requestAmi rajouté sans avoir envoyé de demande
@@ -227,47 +227,47 @@ Version :
Envoyer le fichier
-
+ Send messageEnvoyer le message
-
+ Start audio call with friendLancer un appel audio avec un ami
-
+ Plugins
-
+ List of plugins
-
+ Search
-
+ All
-
+ Online
-
+ Notes
-
+ Notes about user
@@ -317,7 +317,7 @@ Version :
-
+ User {} is now known as {}
@@ -327,17 +327,17 @@ Version :
-
+ Lock
-
+ Cannot lock app
-
+ Error. Profile password is not set.
@@ -577,6 +577,64 @@ Version :
+
+ WelcomeScreen
+
+
+ Don't show again
+
+
+
+
+ Tip of the day
+
+
+
+
+ Press Esc if you want hide app to tray.
+
+
+
+
+ Right click on screenshot button hides app to tray during screenshot
+
+
+
+
+ You can use Tox over Tor. For more info read <a href="https://wiki.tox.chat/users/tox_over_tor_tot">this post</a>
+
+
+
+
+ Use Settings -> Interface to customize interface
+
+
+
+
+ Set profile password via Profile -> Settings. Password allows Toxygen encrypt your history and settings.
+
+
+
+
+ Since v0.1.3 Toxygen supports plugins. <a href="https://github.com/xveduk/toxygen/blob/master/docs/plugins.md">Read more</a>
+
+
+
+
+ New in Toxygen v0.2.2:<br>Users can lock application using profile password.<br>Compact contact list support<br>Bug fixes<br>Tox DNS improvements
+
+
+
+
+ Toxygen supports faux offline messages and file transfers. Send message or file to offline friend and he will get it later
+
+
+
+
+ Set new NoSpam to avoid spam friend requests: Profile -> Settings -> Set new NoSpam
+
+
+audioSettingsForm
@@ -598,32 +656,32 @@ Version :
incoming_call
-
+ Incoming video callAppel vidéo entrant
-
+ Incoming audio callAppel audio entrant
-
+ Outgoing video call
-
+ Outgoing audio call
-
+ Call declined
-
+ Call finished
diff --git a/src/translations/ru_RU.qm b/src/translations/ru_RU.qm
index 1208cf7..629e9bd 100644
Binary files a/src/translations/ru_RU.qm and b/src/translations/ru_RU.qm differ
diff --git a/src/translations/ru_RU.ts b/src/translations/ru_RU.ts
index 2da3894..7e62841 100644
--- a/src/translations/ru_RU.ts
+++ b/src/translations/ru_RU.ts
@@ -87,104 +87,104 @@ can produce IP leak
MainWindow
-
+ ProfileПрофиль
-
+ SettingsНастройки
-
+ AboutО программе
-
+ Add contactДобавить контакт
-
+ PrivacyПриватность
-
+ InterfaceИнтерфейс
-
+ NotificationsУведомления
-
+ NetworkСеть
-
+ About programО программе
-
+ User {} wants to add you to contact list. Message:
{}Пользователь {} хочет добавить Вас в список контактов. Сообщение:
{}
-
+ Friend requestЗапрос на добавление в друзья
-
+ Choose fileВыберите файл
-
+ Disallow auto acceptЗапретить автоматическое получение файлов
-
+ Allow auto acceptРазрешить автоматическое получение файлов
-
+ Set aliasИзменить псевдоним
-
+ Clear historyОчистить историю
-
+ Copy public keyКопировать публичный ключ
-
+ Remove friendУдалить друга
-
+ Enter new alias for friend {} or leave empty to use friend's name:Введите новый псевдоним для друга {} или оставьте пустым для использования его имени:
-
+ AudioАудио
@@ -194,18 +194,18 @@ can produce IP leak
Найти контакт
-
+ Friend addedДруг добавлен
-
+ Toxygen is Tox client written on Python.
Version: Toxygen - клиент для мессенджера Tox, написанный на Python. Версия:
-
+ Friend added without sending friend requestДруг добавлен без отправки запроса на добавление в друзья
@@ -225,47 +225,47 @@ Version:
Отправить файл
-
+ Send messageОтправить сообщение
-
+ Start audio call with friendНачать аудиозвонок с другом
-
+ PluginsПлагины
-
+ List of pluginsСписок плагинов
-
+ SearchПоиск
-
+ AllВсе
-
+ OnlineОнлайн
-
+ NotesЗаметки
-
+ Notes about userЗаметки о пользователе
@@ -315,7 +315,7 @@ Version:
Сохранить
-
+ User {} is now known as {}Пользователь {} сейчас известен как {}
@@ -325,17 +325,17 @@ Version:
Удалить сообщение
-
+ LockЗаблокировать
-
+ Cannot lock appНевозможно заблокировать приложение
-
+ Error. Profile password is not set.Ошибка. Пароль профиля не установлен.
@@ -580,6 +580,64 @@ Version:
Сделать профилем по умолчанию
+
+ WelcomeScreen
+
+
+ Don't show again
+ Не показывать снова
+
+
+
+ Tip of the day
+ Подсказка дня
+
+
+
+ Press Esc if you want hide app to tray.
+ Нажатие Esc сворачивает приложение в трей.
+
+
+
+ Right click on screenshot button hides app to tray during screenshot
+ Правый клик на кнопке скриншота сворачивает приложение в трей на время скриншота
+
+
+
+ You can use Tox over Tor. For more info read <a href="https://wiki.tox.chat/users/tox_over_tor_tot">this post</a>
+ Вы можете использовать Tox через Tor. Дополнительная информация <a href="https://wiki.tox.chat/users/tox_over_tor_tot">тут</a>
+
+
+
+ Use Settings -> Interface to customize interface
+ Используйте Настройки -> Интерфейс для настройки интерфейса
+
+
+
+ Set profile password via Profile -> Settings. Password allows Toxygen encrypt your history and settings.
+ Установите пароль профиля: Профиль -> Настройки. Пароль позволяет шифровать историю переписки и настройки.
+
+
+
+ Since v0.1.3 Toxygen supports plugins. <a href="https://github.com/xveduk/toxygen/blob/master/docs/plugins.md">Read more</a>
+ С версии 0.1.3 Toxygen поддерживает плагины. <a href="https://github.com/xveduk/toxygen/blob/master/docs/plugins.md">Узнать больше.</a>
+
+
+
+ New in Toxygen v0.2.2:<br>Users can lock application using profile password.<br>Compact contact list support<br>Bug fixes<br>Tox DNS improvements
+ С версии 0.1.3 Toxygen поддерживает плагины. <a href="https://github.com/xveduk/toxygen/blob/master/docs/plugins.md">Узнать больше.</a>
+
+
+
+ Toxygen supports faux offline messages and file transfers. Send message or file to offline friend and he will get it later
+ Toxygen поддерживает псевдооффлайн сообщения и файл трансферы
+
+
+
+ Set new NoSpam to avoid spam friend requests: Profile -> Settings -> Set new NoSpam
+ Установите новый NoSpam, чтобы избежать спам запросов в друзья: Профиль->Настройки->Новый NoSpam
+
+audioSettingsForm
@@ -601,32 +659,32 @@ Version:
incoming_call
-
+ Incoming video callВходящий видеозвонок
-
+ Incoming audio callВходящий аудиозвонок
-
+ Outgoing video callИсходящий видеозвонок
-
+ Outgoing audio callИсходящий аудиозвонок
-
+ Call declinedЗвонок отменен
-
+ Call finishedЗвонок завершен
@@ -656,7 +714,7 @@ Version:
Smiley pack:
- Набор смайликов
+ Набор смайликов:
@@ -851,7 +909,7 @@ Version:
Block by public key:
- Блокировать по публичному ключу
+ Блокировать по публичному ключу: