diff --git a/TODO.pep b/TODO.pep index 5ff51f706..3e6072e98 100644 --- a/TODO.pep +++ b/TODO.pep @@ -1,5 +1,18 @@ • configure access model when changing it in the combobox -• tab in preferences for PEP +• configure tab in preferences for PEP • PEP in status change -• possible transport of Mood in message -• Tune not set to none on connection + +Tune use cases: +• on connection of an account set Tune to current track +• on disconnection of an account set Tune to None +• on change of a track set Tune to a new value + +Tooltips use cases: +• Show PEP in contact tooltips +• Show PEP in GC tooltips +• Show PEP in account tooltips + +Mood/Activity use cases +• on connection of an account set them to None +• on disconnection of an account set them to None +• on explicit set publish them diff --git a/data/glade/preferences_window.glade b/data/glade/preferences_window.glade index f82682c62..8e5954841 100644 --- a/data/glade/preferences_window.glade +++ b/data/glade/preferences_window.glade @@ -1,2166 +1,3678 @@ - - - + + + - - 6 - Preferences - preferences - - - - - True - 6 - - - True - True - False - - - True - 12 - 6 - - - True - Use t_rayicon (aka. notification area icon) - True - 0 - True - - - - False - False - - - - - True - True - If checked, Gajim will remember the roster and chat window positions in the screen and the sizes of them next time you run it - Save _position and size for roster and chat windows - True - 0 - True - - - - False - False - 1 - - - - - True - True - If checked, Gajim will display avatars of contacts in roster window and in group chats - Display a_vatars of contacts in roster - True - 0 - True - - - - False - False - 2 - - - - - True - True - If checked, Gajim will display status messages of contacts under the contact name in roster window and in group chats - Display status _messages of contacts in roster - True - 0 - True - - - - False - False - 3 - - - - - True - True - _Sort contacts by status - True - 0 - True - - - - False - False - 4 - - - - - True - 0 - GTK_SHADOW_NONE - - - True - 6 - 4 - 12 - - - True - 12 - - - True - 12 - - - True - Default status _iconset: - True - iconset_combobox - - - False - False - - - - - True - - - - False - 1 - - - - - True - True - If checked, Gajim will use protocol-specific status icons. (eg. A contact from MSN will have the equivalent msn icon for status online, away, busy, etc...) - Use _transports iconsets - True - 0 - True - - - - False - 2 - - - - - - - True - 12 - - - True - T_heme: - True - theme_combobox - - - False - False - - - - - True - - - - False - 1 - - - - - True - True - Configure color and font of the interface - Ma_nage... - True - 0 - - - - False - False - 2 - - - - - 1 - - - - - - - - - True - <b>Interface Customization</b> - True - - - label_item - - - - - False - 12 - 5 - - - - - False - - - - - True - General - - - tab - False - False - - - - - True - 12 - 6 - - - True - 5 - - - True - 1 - One message _window: - True - one_window_type_combobox - - - False - False - - - - - True - Never + + + 6 + Preferences + GTK_WINDOW_TOPLEVEL + GTK_WIN_POS_NONE + False + True + False + preferences + True + False + False + GDK_WINDOW_TYPE_HINT_NORMAL + GDK_GRAVITY_NORTH_WEST + True + False + + + + + + True + False + 6 + + + + True + True + True + False + GTK_POS_TOP + False + False + + + + 12 + True + False + 6 + + + + True + Use t_rayicon (aka. notification area icon) + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + If checked, Gajim will remember the roster and chat window positions in the screen and the sizes of them next time you run it + True + Save _position and size for roster and chat windows + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + If checked, Gajim will display avatars of contacts in roster window and in group chats + True + Display a_vatars of contacts in roster + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + If checked, Gajim will display status messages of contacts under the contact name in roster window and in group chats + True + Display status _messages of contacts in roster + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + True + _Sort contacts by status + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + 6 + True + 0.5 + 0.5 + 1 + 1 + 4 + 0 + 12 + 0 + + + + True + False + 12 + + + + True + False + 12 + + + + True + Default status _iconset: + True + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + iconset_combobox + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + + True + False + True + + + + 0 + False + True + + + + + + True + If checked, Gajim will use protocol-specific status icons. (eg. A contact from MSN will have the equivalent msn icon for status online, away, busy, etc...) + True + Use _transports iconsets + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + True + + + + + 0 + True + True + + + + + + True + False + 12 + + + + True + T_heme: + True + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + theme_combobox + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + + True + False + True + + + + 0 + False + True + + + + + + True + Configure color and font of the interface + True + Ma_nage... + True + GTK_RELIEF_NORMAL + True + + + + 0 + False + False + + + + + 0 + True + True + + + + + + + + + + True + <b>Interface Customization</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 12 + False + True + + + + + False + True + + + + + + True + General + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + tab + + + + + + 12 + True + False + 6 + + + + True + False + 5 + + + + True + One message _window: + True + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 1 + 0 + one_window_type_combobox + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + + True + Never Always Per account Per type - - - - False - False - 1 - - - - - False - - - - - True - Hides buttons in chatwindows to - _Make message windows compact - True - 0 - True - - - - False - False - 1 - - - - - True - True - Some messages may include rich content (formatting, colors etc). If checked, Gajim will just display the raw message text. - Ignore rich content in incoming messages - True - 0 - True - - - - False - False - 2 - - - - - True - _Highlight misspelled words - True - 0 - True - - - - False - False - 3 - - - - - True - 4 - - - True - 1 - Treat all incoming messages as: - - - False - False - - - - - True - Determined by sender + False + True + + + + 0 + False + False + + + + + 0 + False + True + + + + + + Hides buttons in chatwindows to + True + _Make message windows compact + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + Some messages may include rich content (formatting, colors etc). If checked, Gajim will just display the raw message text. + True + Ignore rich content in incoming messages + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + _Highlight misspelled words + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + False + 4 + + + + True + Treat all incoming messages as: + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 1 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + + True + Determined by sender Chat message Single message - - - - False - False - 1 - - - - - False - 4 - - - - - True - 5 - - - True - If not disabled, Gajim will replace ascii smilies like ':)' with equivalent animated or static graphical emoticons - - - True - 1 - Emoticons: - - - - - False - False - - - - - True - - - - False - 1 - - - - - False - 5 - - - - - True - 0 - GTK_SHADOW_NONE - - - True - 6 - 12 - - - True - 12 - - - True - 6 - - - True - 0 - Print time: - - - False - False - - - - - True - True - On every _message - True - 0 - True - - - - False - False - 1 - - - - - True - True - Also known as iChat style - E_very 5 minutes - True - 0 - True - time_always_radiobutton - - - - False - False - 2 - - - - - True - True - _Never - True - 0 - True - time_always_radiobutton - - - - False - False - 3 - - - - - False - - - - - True - 4 - 4 - 12 - 6 - - - True - True - Use system _default - True - 0 - True - - - - 2 - 4 - 3 - 4 - GTK_FILL - - - - - - True - 6 - - - True - 0 - _Font: - True - conversation_fontbutton - - - - - True - True - 0 - - - - False - 1 - - - - - 2 - 3 - 4 - GTK_FILL - - - - - True - - - True - - - False - - - - - True - True - False - 0 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-revert-to-saved - - - False - False - - - - - True - _Reset to Default Colors - True - - - False - False - 1 - - - - - - - - - False - False - 1 - - - - - 4 - 2 - 3 - GTK_FILL - - - - - True - True - 0 - - - - 3 - 4 - 1 - 2 - GTK_FILL - - - - - - True - 0 - _URL: - True - url_msg_colorbutton - - - 2 - 3 - 1 - 2 - GTK_FILL - - - - - - True - True - 0 - - - - 1 - 2 - 1 - 2 - - - - - - - True - 0 - _Status message: - True - GTK_JUSTIFY_CENTER - True - status_msg_colorbutton - - - 1 - 2 - GTK_FILL - - - - - - True - True - 0 - - - - 3 - 4 - GTK_FILL - - - - - - True - 0 - _Outgoing message: - True - GTK_JUSTIFY_CENTER - True - outgoing_msg_colorbutton - - - 2 - 3 - GTK_FILL - - - - - - True - True - True - True - True - 0 - - - - 1 - 2 - - - - - - - True - 0 - _Incoming message: - True - GTK_JUSTIFY_CENTER - True - incoming_msg_colorbutton - - - GTK_FILL - - - - - - False - 1 - - - - - - - - - True - <b>Format of a line</b> - True - - - label_item - - - - - False - False - 6 - - - - - 1 - False - - - - - True - Chat - - - tab - 1 - False - False - - - - - True - 12 - 12 - - - True - 0 - GTK_SHADOW_NONE - - - True - 6 - 12 - - - True - 6 - - - True - 2 - 0 - GTK_SHADOW_NONE - - - True - 12 - - - True - 3 - 6 - - - True - True - Gajim will notify you for new events via a popup in the bottom right of the screen - _Notify me about it - True - 0 - True - - - - False - False - - - - - True - True - Gajim will automatically show new events by popping up the relevant window - _Pop it up - True - 0 - True - notify_on_new_message_radiobutton - - - - False - False - 1 - - - - - True - True - Gajim will only change the icon of the contact that triggered the new event - Show only in _roster - True - 0 - True - notify_on_new_message_radiobutton - - - - False - False - 2 - - - - - - - - - True - When a new event (message, file transfer request etc..) is received, the following methods may be used to inform you about it. Please note that events about new messages only occur if it is a new message from a contact you are not already chatting with - - - True - When new event is received - - - - - label_item - - - - - False - False - - - - - True - 6 - - - True - Notify me about contacts that: - - - False - False - - - - - True - True - Gajim will notify you via a popup window in the bottom right of the screen about contacts that just signed in - Sign _in - True - 0 - True - - - - False - False - 1 - - - - - True - True - Gajim will notify you via a popup window in the bottom right of the screen about contacts that just signed out - Sign _out - True - 0 - True - - - - False - False - 2 - - - - - False - 1 - - - - - True - True - Allow popup/notifications when I'm _away/na/busy/invisible - True - 0 - True - - - - False - False - 2 - - - - - True - True - - - True - True - 0 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-open - - - False - False - - - - - True - _Advanced Notifications Control... - True - - - False - False - 1 - - - - - - - - - False - False - - - - - - - - - - - 3 - - - - - - - - - True - <b>Visual Notifications</b> - True - - - label_item - - - - - False - False - - - - - True - True - Check this option, only if someone you don't have in the roster spams/annoys you. Use with caution, because it blocks all messages from any contact that is not in the roster - _Ignore events from contacts not in the roster - True - 0 - True - - - - False - False - 1 - - - - - True - 12 - - - True - Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to send to the other party. - - - True - Outgoing Chat state noti_fications: - True - - - - - False - False - - - - - True - All chat states + False + True + + + + 0 + False + False + + + + + 0 + False + True + + + + + + True + False + 5 + + + + True + If not disabled, Gajim will replace ascii smilies like ':)' with equivalent animated or static graphical emoticons + True + False + + + + True + Emoticons: + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 1 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + + + 0 + False + False + + + + + + True + False + True + + + + 0 + False + True + + + + + 0 + False + True + + + + + + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + 6 + True + 0.5 + 0.5 + 1 + 1 + 0 + 0 + 12 + 0 + + + + True + False + 12 + + + + True + False + 6 + + + + True + Print time: + False + False + GTK_JUSTIFY_LEFT + False + False + 0 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + + True + True + On every _message + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + Also known as iChat style + True + E_very 5 minutes + True + GTK_RELIEF_NORMAL + True + False + False + True + time_always_radiobutton + + + + 0 + False + False + + + + + + True + True + _Never + True + GTK_RELIEF_NORMAL + True + False + False + True + time_always_radiobutton + + + + 0 + False + False + + + + + 0 + False + True + + + + + + True + 4 + 4 + False + 6 + 12 + + + + True + True + Use system _default + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 2 + 4 + 3 + 4 + + + + + + + + True + False + 6 + + + + True + _Font: + True + False + GTK_JUSTIFY_LEFT + False + False + 0 + 0.5 + 0 + 0 + conversation_fontbutton + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + True + True + + + + + + True + True + True + True + False + False + True + + + + 0 + False + True + + + + + 0 + 2 + 3 + 4 + + + + + + + True + False + 0 + + + + True + + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + True + False + + + + + + True + True + GTK_RELIEF_NORMAL + False + + + + + True + 0.5 + 0.5 + 0 + 0 + 0 + 0 + 0 + 0 + + + + True + False + 2 + + + + True + gtk-revert-to-saved + 4 + 0.5 + 0.5 + 0 + 0 + + + 0 + False + False + + + + + + True + _Reset to Default Colors + True + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + + + + + 0 + False + False + + + + + 0 + 4 + 2 + 3 + + + + + + + True + True + False + True + + + + 3 + 4 + 1 + 2 + + + + + + + + True + _URL: + True + False + GTK_JUSTIFY_LEFT + False + False + 0 + 0.5 + 0 + 0 + url_msg_colorbutton + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 2 + 3 + 1 + 2 + + + + + + + + True + True + False + True + + + + 1 + 2 + 1 + 2 + + + + + + + + True + _Status message: + True + False + GTK_JUSTIFY_CENTER + True + False + 0 + 0.5 + 0 + 0 + status_msg_colorbutton + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + 1 + 1 + 2 + + + + + + + + True + True + False + True + + + + 3 + 4 + 0 + 1 + + + + + + + + True + _Outgoing message: + True + False + GTK_JUSTIFY_CENTER + True + False + 0 + 0.5 + 0 + 0 + outgoing_msg_colorbutton + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 2 + 3 + 0 + 1 + + + + + + + + True + True + True + True + True + False + True + + + + 1 + 2 + 0 + 1 + + + + + + + + True + _Incoming message: + True + False + GTK_JUSTIFY_CENTER + True + False + 0 + 0.5 + 0 + 0 + incoming_msg_colorbutton + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + 1 + 0 + 1 + + + + + + + 0 + False + True + + + + + + + + + + True + <b>Format of a line</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + False + False + + + + + False + True + + + + + + True + Chat + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + tab + + + + + + 12 + True + False + 12 + + + + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + 6 + True + 0.5 + 0.5 + 1 + 1 + 0 + 0 + 12 + 0 + + + + True + False + 6 + + + + 2 + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + True + 0.5 + 0.5 + 1 + 1 + 0 + 0 + 12 + 0 + + + + 3 + True + False + 6 + + + + True + Gajim will notify you for new events via a popup in the bottom right of the screen + True + _Notify me about it + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + Gajim will automatically show new events by popping up the relevant window + True + _Pop it up + True + GTK_RELIEF_NORMAL + True + False + False + True + notify_on_new_message_radiobutton + + + + 0 + False + False + + + + + + True + Gajim will only change the icon of the contact that triggered the new event + True + Show only in _roster + True + GTK_RELIEF_NORMAL + True + False + False + True + notify_on_new_message_radiobutton + + + + 0 + False + False + + + + + + + + + + True + When a new event (message, file transfer request etc..) is received, the following methods may be used to inform you about it. Please note that events about new messages only occur if it is a new message from a contact you are not already chatting with + True + False + + + + True + When new event is received + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + + + label_item + + + + + 0 + False + False + + + + + + True + False + 6 + + + + True + Notify me about contacts that: + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + + True + Gajim will notify you via a popup window in the bottom right of the screen about contacts that just signed in + True + Sign _in + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + Gajim will notify you via a popup window in the bottom right of the screen about contacts that just signed out + True + Sign _out + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + 0 + False + True + + + + + + True + True + Allow popup/notifications when I'm _away/na/busy/invisible + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + False + 0 + + + + True + True + GTK_RELIEF_NORMAL + True + + + + + True + 0.5 + 0.5 + 0 + 0 + 0 + 0 + 0 + 0 + + + + True + False + 2 + + + + True + gtk-open + 4 + 0.5 + 0.5 + 0 + 0 + + + 0 + False + False + + + + + + True + _Advanced Notifications Control... + True + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + + + + + 0 + False + False + + + + + + + + + + + + + 0 + True + True + + + + + + + + + + True + <b>Visual Notifications</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + False + False + + + + + + True + Check this option, only if someone you don't have in the roster spams/annoys you. Use with caution, because it blocks all messages from any contact that is not in the roster + True + _Ignore events from contacts not in the roster + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + False + 12 + + + + True + Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to send to the other party. + True + False + + + + True + Outgoing Chat state noti_fications: + True + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + + + 0 + False + False + + + + + + True + All chat states Composing only Disabled - - - - False - 1 - - - - - False - False - 2 - - - - - True - 12 - - - True - Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to display in chat windows. - - - True - Displayed Chat state noti_fications: - True - - - - - False - False - - - - - True - All chat states + False + True + + + + 0 + False + True + + + + + 0 + False + False + + + + + + True + False + 12 + + + + True + Gajim can send and receive meta-information related to a conversation you may have with a contact. Here you can specify which chatstates you want to display in chat windows. + True + False + + + + True + Displayed Chat state noti_fications: + True + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + + + 0 + False + False + + + + + + True + All chat states Composing only Disabled - - - - False - 1 - - - - - False - False - 3 - - - - - True - True - - - True - 6 - - - True - 6 - True - - - True - True - Play _sounds - True - 0 - True - - - - - - 5 - - - True - _Player: - True - soundplayer_entry - - - - - True - True - - - - 1 - - - - - 1 - - - - - False - False - - - - - True - True - GTK_POLICY_AUTOMATIC - GTK_POLICY_AUTOMATIC - GTK_SHADOW_IN - - - True - True - - - - - - 1 - - - - - True - 6 - - - True - True - - - - - - True - True - ... - True - 0 - - - - False - False - 1 - - - - - True - True - 0 - - - - True - gtk-media-play - - - - - False - False - 2 - - - - - False - 2 - - - - - - - True - <b>Sounds</b> - True - - - label_item - - - - - 4 - - - - - 2 - False - - - - - True - Events - - - tab - 2 - False - False - - - - - True - 12 - 12 - - - True - 2 - 4 - 12 - 6 - - - True - True - The auto not available status message - - - - 3 - 4 - 1 - 2 - - - - - - True - True - The auto away status message - - - - 3 - 4 - - - - - - True - 1 - 0 - - - 50 - True - True - 20 1 1440 1 10 10 - 1 - - - - - - 1 - 2 - 1 - 2 - GTK_FILL - GTK_FILL - - - - - True - 1 - 0 - - - 50 - True - True - 12 1 720 1 10 10 - 1 - - - - - - 1 - 2 - GTK_FILL - GTK_FILL - - - - - True - 0 - minutes - - - 2 - 3 - 1 - 2 - GTK_FILL - - - - - - True - 0 - minutes - - - 2 - 3 - GTK_FILL - - - - - - True - True - Auto _not available after: - True - 0 - True - - - - 1 - 2 - GTK_FILL - - - - - - True - True - Auto _away after: - True - 0 - True - - - - GTK_FILL - - - - - - False - - - - - True - 6 - - - True - Ask status message when I: - - - False - False - - - - - True - 14 - - - True - True - Sign _in - True - 0 - True - - - - False - False - - - - - True - True - Sign _out - True - 0 - True - - - - False - False - 1 - - - - - False - False - 1 - - - - - False - False - 1 - - - - - True - True - Works for Rhythmbox and Muine players. For more players, please visit http://trac.gajim.org/wiki/GajimAndMusicPlayer - Set status message to reflect currently playing _music track - True - 0 - True - - - - False - False - 2 - - - - - True - An example: If you have enabled status message for away, Gajim won't ask you anymore for a status message when you change your status to away; it will use the default one set here - - - True - True - - - - True - True - 6 - GTK_POLICY_AUTOMATIC - GTK_POLICY_AUTOMATIC - GTK_SHADOW_IN - - - True - True - - - - - - - True - Default Status Messages - - - label_item - - - - - - - False - 3 - - - - - True - 0 - GTK_SHADOW_NONE - - - True - 6 - 12 - - - True - 6 - - - True - 6 - - - True - True - 5 - GTK_POLICY_AUTOMATIC - GTK_POLICY_AUTOMATIC - GTK_SHADOW_IN - - - True - True - False - - - - - - - - - True - GTK_BUTTONBOX_START - - - True - True - True - 5 - gtk-new - True - 0 - - - - - - True - True - True - 5 - gtk-delete - True - 0 - - - - 1 - - - - - False - 1 - - - - - - - True - True - 5 - GTK_POLICY_AUTOMATIC - GTK_POLICY_AUTOMATIC - GTK_SHADOW_IN - - - True - True - - - - - False - False - 1 - - - - - - - - - True - <b>Preset Status Messages</b> - True - - - label_item - - - - - 4 - - - - - 3 - False - - - - - True - Status - - - tab - 3 - False - False - - - - - True - 12 - 6 - - - True - 0 - GTK_SHADOW_NONE - - - True - 6 - 12 - - - True - 6 - - - True - Autodetect on every Gajim startup + False + True + + + + 0 + False + True + + + + + 0 + False + False + + + + + + True + True + False + 0 + + + + True + False + 6 + + + + True + True + 6 + + + + True + True + Play _sounds + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + True + True + + + + + + False + 5 + + + + True + _Player: + True + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + soundplayer_entry + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + True + True + + + + + + True + True + True + True + 0 + + True + + False + + + + 0 + True + True + + + + + 0 + True + True + + + + + 0 + False + False + + + + + + True + True + GTK_POLICY_AUTOMATIC + GTK_POLICY_AUTOMATIC + GTK_SHADOW_IN + GTK_CORNER_TOP_LEFT + + + + True + True + True + False + False + True + False + False + False + + + + + + 0 + True + True + + + + + + True + False + 6 + + + + True + True + True + True + 0 + + True + + False + + + + 0 + True + True + + + + + + True + True + ... + True + GTK_RELIEF_NORMAL + True + + + + 0 + False + False + + + + + + True + True + GTK_RELIEF_NORMAL + True + + + + + True + gtk-media-play + 4 + 0.5 + 0.5 + 0 + 0 + + + + + 0 + False + False + + + + + 0 + False + True + + + + + + + + True + <b>Sounds</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + True + True + + + + + False + True + + + + + + True + Events + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + tab + + + + + + 12 + True + False + 12 + + + + True + 2 + 4 + False + 6 + 12 + + + + True + The auto not available status message + True + True + True + 0 + + True + + False + + + + 3 + 4 + 1 + 2 + + + + + + + True + The auto away status message + True + True + True + 0 + + True + + False + + + + 3 + 4 + 0 + 1 + + + + + + + True + 1 + 0.5 + 0 + 1 + 0 + 0 + 0 + 0 + + + + 50 + True + True + 1 + 0 + False + GTK_UPDATE_ALWAYS + False + False + 20 1 1440 1 10 10 + + + + + + 1 + 2 + 1 + 2 + + + + + + + + True + 1 + 0.5 + 0 + 1 + 0 + 0 + 0 + 0 + + + + 50 + True + True + 1 + 0 + False + GTK_UPDATE_ALWAYS + False + False + 12 1 720 1 10 10 + + + + + + 1 + 2 + 0 + 1 + + + + + + + + True + minutes + False + False + GTK_JUSTIFY_LEFT + False + False + 0 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 2 + 3 + 1 + 2 + + + + + + + + True + minutes + False + False + GTK_JUSTIFY_LEFT + False + False + 0 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 2 + 3 + 0 + 1 + + + + + + + + True + True + Auto _not available after: + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + 1 + 1 + 2 + + + + + + + + True + True + Auto _away after: + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + 1 + 0 + 1 + + + + + + + 0 + False + True + + + + + + True + False + 6 + + + + True + Ask status message when I: + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + + True + False + 14 + + + + True + True + Sign _in + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + True + Sign _out + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + 0 + False + False + + + + + 0 + False + False + + + + + + True + Works for Rhythmbox and Muine players. For more players, please visit http://trac.gajim.org/wiki/GajimAndMusicPlayer + True + Set status message to reflect currently playing _music track + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + An example: If you have enabled status message for away, Gajim won't ask you anymore for a status message when you change your status to away; it will use the default one set here + True + False + + + + True + True + False + 0 + + + + + 6 + True + True + GTK_POLICY_AUTOMATIC + GTK_POLICY_AUTOMATIC + GTK_SHADOW_IN + GTK_CORNER_TOP_LEFT + + + + True + True + True + False + False + True + False + False + False + + + + + + + + True + Default Status Messages + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + + + 0 + False + True + + + + + + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + 6 + True + 0.5 + 0.5 + 1 + 1 + 0 + 0 + 12 + 0 + + + + True + False + 6 + + + + True + False + 6 + + + + 5 + True + True + GTK_POLICY_AUTOMATIC + GTK_POLICY_AUTOMATIC + GTK_SHADOW_IN + GTK_CORNER_TOP_LEFT + + + + True + True + False + False + False + True + False + False + False + + + + + + + 0 + True + True + + + + + + True + GTK_BUTTONBOX_START + 0 + + + + 5 + True + True + True + gtk-new + True + GTK_RELIEF_NORMAL + True + + + + + + + 5 + True + True + True + gtk-delete + True + GTK_RELIEF_NORMAL + True + + + + + + 0 + False + True + + + + + 0 + True + True + + + + + + 5 + True + True + GTK_POLICY_AUTOMATIC + GTK_POLICY_AUTOMATIC + GTK_SHADOW_IN + GTK_CORNER_TOP_LEFT + + + + True + True + True + False + True + GTK_JUSTIFY_LEFT + GTK_WRAP_NONE + True + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + 0 + False + False + + + + + + + + + + True + <b>Preset Status Messages</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + True + True + + + + + False + True + + + + + + True + Status + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + tab + + + + + + 12 + True + False + 6 + + + + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + 6 + True + 0.5 + 0.5 + 1 + 1 + 0 + 0 + 12 + 0 + + + + True + False + 6 + + + + True + Autodetect on every Gajim startup Always use GNOME default applications Always use KDE default applications Always use XFCE4 default applications Custom - - - - - - 0 - GTK_SHADOW_NONE - - - True - 6 - 12 - - - True - 3 - 2 - 12 - 6 - - - True - True - - - - 1 - 2 - 2 - 3 - - - - - - True - 0 - _File manager: - True - custom_file_manager_entry - - - 2 - 3 - GTK_FILL - - - - - - True - True - - - - 1 - 2 - - - - - - True - True - - - - 1 - 2 - 1 - 2 - - - - - - True - 0 - _Mail client: - True - custom_mail_client_entry - - - 1 - 2 - GTK_FILL - - - - - - True - 0 - _Browser: - True - custom_browser_entry - - - GTK_FILL - - - - - - - - - - True - <b>Custom</b> - True - - - label_item - - - - - 1 - - - - - - - - - True - <b>Applications</b> - True - - - label_item - - - - - False - False - - - - - True - True - 0 - GTK_SHADOW_NONE - - - True - 6 - 12 - - - True - 6 - - - True - True - Notify on new _GMail email - True - 0 - True - - - - False - False - - - - - True - True - If checked, Gajim will also include information about the sender of the new emails - Display _extra email details - True - 0 - True - - - - False - False - 1 - - - - - - - - - True - <b>GMail Options</b> - True - - - label_item - - - - - False - False - 1 - - - - - True - 0 - GTK_SHADOW_NONE - - - True - 6 - 12 - - - True - 6 - - - True - True - _Log status changes of contacts - True - 0 - True - - - - False - False - - - - - True - True - Allow _OS information to be sent - True - 0 - True - - - - False - False - 1 - - - - - True - True - Always check to see if Gajim is the _default Jabber client on startup - True - 0 - True - - - - False - False - 2 - - - - - - - - - True - <b>Miscellaneous</b> - True - - - label_item - - - - - False - False - 2 - - - - - True - 0 - GTK_SHADOW_NONE - - - True - 6 - 0 - 12 - 335 - - - True - True - 0 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-open - - - False - False - - - - - True - _Open... - True - - - False - False - 1 - - - - - - - - - - - - - True - <b>Advanced Configuration Editor</b> - True - - - label_item - - - - - False - False - 3 - - - - - 4 - False - - - - - True - Advanced - - - tab - 4 - False - False - - - - - - - True - 15 - GTK_BUTTONBOX_END - - - True - True - True - gtk-close - True - 0 - - - - - - False - 1 - - - - - + False + True + + + + 0 + True + True + + + + + + 0 + 0.5 + GTK_SHADOW_NONE + + + + 6 + True + 0.5 + 0.5 + 1 + 1 + 0 + 0 + 12 + 0 + + + + True + 3 + 2 + False + 6 + 12 + + + + True + True + True + True + 0 + + True + + False + + + + 1 + 2 + 2 + 3 + + + + + + + True + _File manager: + True + False + GTK_JUSTIFY_LEFT + False + False + 0 + 0.5 + 0 + 0 + custom_file_manager_entry + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + 1 + 2 + 3 + + + + + + + + True + True + True + True + 0 + + True + + False + + + + 1 + 2 + 0 + 1 + + + + + + + True + True + True + True + 0 + + True + + False + + + + 1 + 2 + 1 + 2 + + + + + + + True + _Mail client: + True + False + GTK_JUSTIFY_LEFT + False + False + 0 + 0.5 + 0 + 0 + custom_mail_client_entry + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + 1 + 1 + 2 + + + + + + + + True + _Browser: + True + False + GTK_JUSTIFY_LEFT + False + False + 0 + 0.5 + 0 + 0 + custom_browser_entry + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + 1 + 0 + 1 + + + + + + + + + + + + True + <b>Custom</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + True + True + + + + + + + + + + True + <b>Applications</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + False + False + + + + + + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + 6 + True + 0.5 + 0.5 + 1 + 1 + 0 + 0 + 12 + 0 + + + + True + False + 6 + + + + True + True + Notify on new _GMail email + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + If checked, Gajim will also include information about the sender of the new emails + True + Display _extra email details + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + + + + + True + <b>GMail Options</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + False + False + + + + + + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + 6 + True + 0.5 + 0.5 + 1 + 1 + 0 + 0 + 12 + 0 + + + + True + False + 6 + + + + True + True + _Log status changes of contacts + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + True + Allow _OS information to be sent + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + True + Always check to see if Gajim is the _default Jabber client on startup + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + + + + + True + <b>Miscellaneous</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + False + False + + + + + + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + 6 + True + 0.5 + 0.5 + 1 + 0 + 0 + 0 + 12 + 335 + + + + True + True + GTK_RELIEF_NORMAL + True + + + + + True + 0.5 + 0.5 + 0 + 0 + 0 + 0 + 0 + 0 + + + + True + False + 2 + + + + True + gtk-open + 4 + 0.5 + 0.5 + 0 + 0 + + + 0 + False + False + + + + + + True + _Open... + True + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + + + + + + + + + + True + <b>Advanced Configuration Editor</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + False + False + + + + + False + True + + + + + + True + Advanced + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + tab + + + + + + 12 + True + False + 6 + + + + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + True + 0.5 + 0.5 + 1 + 1 + 0 + 0 + 12 + 0 + + + + True + False + 0 + + + + True + True + Publish Mood + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + True + Publish Activity + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + True + Publish Tune + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + + + + + True + <b>Publish Personal Events</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + True + True + + + + + + True + 0 + 0.5 + GTK_SHADOW_NONE + + + + True + 0.5 + 0.5 + 1 + 1 + 0 + 0 + 12 + 0 + + + + True + False + 0 + + + + True + True + Subscribe Mood + True + GTK_RELIEF_NORMAL + True + False + False + True + + + + 0 + False + False + + + + + + True + True + Subscribe Activity + True + GTK_RELIEF_NORMAL + True + True + False + True + + + + 0 + False + False + + + + + + True + True + Subscribe Tune + True + GTK_RELIEF_NORMAL + True + True + False + True + + + + 0 + False + False + + + + + + + + + + True + <b>Subscribe Personal Events</b> + False + True + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + label_item + + + + + 0 + True + True + + + + + False + True + + + + + + True + Personal Events + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.449999988079 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + tab + + + + + 0 + True + True + + + + + + True + GTK_BUTTONBOX_END + 15 + + + + True + True + True + gtk-close + True + GTK_RELIEF_NORMAL + True + + + + + + 0 + False + True + + + + + + diff --git a/src/common/config.py b/src/common/config.py index f17c51c42..5f5a8d29b 100644 --- a/src/common/config.py +++ b/src/common/config.py @@ -229,6 +229,12 @@ class Config: 'use_latex': [opt_bool, False, _('If True, Gajim will convert string between $$ and $$ to an image using dvips and convert before insterting it in chat window.')], 'change_status_window_timeout': [opt_int, 15, _('Time of inactivity needed before the change status window closes down.')], 'max_conversation_lines': [opt_int, 500, _('Maximum number of lines that are printed in conversations. Oldest lines are cleared.')], + 'publish_mood': [opt_bool, False], + 'publish_activity': [opt_bool, False], + 'publish_tune': [opt_bool, False], + 'subscribe_mood': [opt_bool, True], + 'subscribe_activity': [opt_bool, True], + 'subscribe_tune': [opt_bool, True], } __options_per_key = { diff --git a/src/common/connection.py b/src/common/connection.py index 0284e1c39..89d22c3de 100644 --- a/src/common/connection.py +++ b/src/common/connection.py @@ -50,6 +50,11 @@ log = logging.getLogger('gajim.c.connection') import gtkgui_helpers +from common import dbus_support +if dbus_support.supported: + from music_track_listener import MusicTrackListener + import dbus + ssl_error = { 2: "Unable to get issuer certificate", 3: "Unable to get certificate CRL", @@ -181,6 +186,8 @@ class Connection(ConnectionHandlers): # We are doing disconnect at so many places, better use one function in all def disconnect(self, on_purpose = False): + #FIXME: set the Tune to None before disconnection per account + #gajim.interface.roster._music_track_changed(None, None) self.on_purpose = on_purpose self.connected = 0 self.time_to_reconnect = None @@ -525,6 +532,11 @@ class Connection(ConnectionHandlers): if self.on_connect_auth: self.on_connect_auth(con) self.on_connect_auth = None + #FIXME: should set the Tune per account only + listener = MusicTrackListener.get() + track = listener.get_playing_track() + gajim.interface.roster._music_track_changed(listener, track) +# print "%s - %s" % (track.artist, track.title) else: # Forget password if needed if not gajim.config.get_per('accounts', self.name, 'savepass'): diff --git a/src/common/pep.py b/src/common/pep.py index a4611c49e..8b49d899e 100644 --- a/src/common/pep.py +++ b/src/common/pep.py @@ -74,8 +74,12 @@ def user_activity(items, name, jid): contact.activity['text'] = ch.getData() def user_send_mood(account, mood, message = ''): + print "Sending %s: %s" % (mood, message) + if gajim.config.get('publish_mood') == False: + return item = xmpp.Node('mood', {'xmlns': xmpp.NS_MOOD}) - item.addChild(mood) + if mood != '': + item.addChild(mood) if message != '': i = item.addChild('text') i.addData(message) @@ -83,8 +87,11 @@ def user_send_mood(account, mood, message = ''): gajim.connections[account].send_pb_publish('', xmpp.NS_MOOD, item, '0') def user_send_activity(account, activity, subactivity = '', message = ''): + if gajim.config.get('publish_activity') == False: + return item = xmpp.Node('activity', {'xmlns': xmpp.NS_ACTIVITY}) - i = item.addChild(activity) + if activity != '': + i = item.addChild(activity) if subactivity != '': i.addChild(subactivity) if message != '': @@ -94,6 +101,8 @@ def user_send_activity(account, activity, subactivity = '', message = ''): gajim.connections[account].send_pb_publish('', xmpp.NS_ACTIVITY, item, '0') def user_send_tune(account, artist = '', title = '', source = '', track = 0,length = 0, items = None): + if gajim.config.get('publish_tune') == False: + return item = xmpp.Node('tune', {'xmlns': xmpp.NS_TUNE}) if artist != '': i = item.addChild('artist') diff --git a/src/config.py b/src/config.py index 69d4b3b00..02fce854c 100644 --- a/src/config.py +++ b/src/config.py @@ -43,6 +43,7 @@ from common import passwords from common import zeroconf from common import dbus_support from common import dataforms +from common import pep from common.exceptions import GajimGeneralException @@ -496,6 +497,25 @@ class PreferencesWindow: widget.set_active(st) else: widget.set_sensitive(False) + + # PEP + st = gajim.config.get('publish_mood') + self.xml.get_widget('pub_mood').set_active(st) + + st = gajim.config.get('publish_activity') + self.xml.get_widget('pub_activity').set_active(st) + + st = gajim.config.get('publish_tune') + self.xml.get_widget('pub_tune').set_active(st) + + st = gajim.config.get('subscribe_mood') + self.xml.get_widget('sub_mood').set_active(st) + + st = gajim.config.get('subscribe_activity') + self.xml.get_widget('sub_activity').set_active(st) + + st = gajim.config.get('subscribe_tune') + self.xml.get_widget('sub_tune').set_active(st) # Notify user of new gmail e-mail messages, # only show checkbox if user has a gtalk account @@ -561,6 +581,38 @@ class PreferencesWindow: gajim.interface.roster.draw_roster() gajim.interface.save_config() + def on_pub_mood_toggled(self, widget): + if widget.get_active() == False: + for account in gajim.connections: + if gajim.connections[account].pep_supported: + pep.user_send_mood(account, '') + self.on_checkbutton_toggled(widget, 'publish_mood') + + def on_pub_activity_toggled(self, widget): + if widget.get_active() == False: + for account in gajim.connections: + if gajim.connections[account].pep_supported: + pep.user_send_activity(account, '') + self.on_checkbutton_toggled(widget, 'publish_activity') + + def on_pub_tune_toggled(self, widget): + if widget.get_active() == False: + for account in gajim.connections: + if gajim.connections[account].pep_supported: + pep.user_send_tune(account, '') + self.on_checkbutton_toggled(widget, 'publish_tune') + gajim.interface.roster.enable_syncing_status_msg_from_current_music_track( + widget.get_active()) + + def on_sub_mood_toggled(self, widget): + self.on_checkbutton_toggled(widget, 'subscribe_mood') + + def on_sub_activity_toggled(self, widget): + self.on_checkbutton_toggled(widget, 'subscribe_activity') + + def on_sub_tune_toggled(self, widget): + self.on_checkbutton_toggled(widget, 'subscribe_tune') + def on_save_position_checkbutton_toggled(self, widget): self.on_checkbutton_toggled(widget, 'saveposition') diff --git a/src/roster_window.py b/src/roster_window.py index ebaa3cd31..91146bf99 100644 --- a/src/roster_window.py +++ b/src/roster_window.py @@ -2942,12 +2942,14 @@ class RosterWindow: if gajim.connections[account].pep_supported: pep_submenu = gtk.Menu() pep_menuitem.set_submenu(pep_submenu) - item = gtk.MenuItem('Mood') - pep_submenu.append(item) - item.connect('activate', self.on_change_mood_activate, account) - item = gtk.MenuItem('Activity') - pep_submenu.append(item) - item.connect('activate', self.on_change_activity_activate, account) + if gajim.config.get('publish_mood'): + item = gtk.MenuItem('Mood') + pep_submenu.append(item) + item.connect('activate', self.on_change_mood_activate, account) + if gajim.config.get('publish_activity'): + item = gtk.MenuItem('Activity') + pep_submenu.append(item) + item.connect('activate', self.on_change_activity_activate, account) else: pep_menuitem.set_no_show_all(True) pep_menuitem.hide() @@ -5273,7 +5275,7 @@ class RosterWindow: ## accounts has no effect until they are connected. gobject.timeout_add(1000, self.enable_syncing_status_msg_from_current_music_track, - gajim.config.get('set_status_msg_from_current_music_track')) + gajim.config.get('pub_tune')) if gajim.config.get('show_roster_on_startup'): self.window.show_all() diff --git a/src/tooltips.py b/src/tooltips.py index f7aa83f75..d1394357d 100644 --- a/src/tooltips.py +++ b/src/tooltips.py @@ -458,6 +458,10 @@ class RosterTooltip(NotificationAreaTooltip): contact.last_status_time) properties.append((self.table, None)) else: # only one resource + + #FIXME: User {Mood, Activity, Tune} not shown if there are + #multiple resources + #FIXME: User {Mood, Activity, Tune} not shown for self if contact.show: show = helpers.get_uf_show(contact.show) if contact.last_status_time: