Philipp Hörist pushed to branch gajim_1.1 at gajim / gajim
Commits:
a0463710 by Philipp Hörist at 2018-10-07T00:05:07Z
Bring back lost --version command
- - - - -
1 changed file:
- gajim/application.py
Changes:
=====================================
gajim/application.py
=====================================
@@ -40,6 +40,7 @@ from urllib.parse import unquote
from gi.repository import GLib, Gio, Gtk
+import gajim
from gajim.common import app
from gajim.common import configpaths
from gajim.common import logging_helpers
@@ -304,6 +305,9 @@ class GajimApplication(Gtk.Application):
application: Gtk.Application,
options: GLib.VariantDict) -> int:
# Parse all options that have to be executed before ::startup
+ if options.contains('version'):
+ print(gajim.__version__)
+ return 0
if options.contains('profile'):
# Incorporate profile name into application id
# to have a single app instance for each profile.
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/a04637105d9929cfba0cbfa3007aa94a5c…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/a04637105d9929cfba0cbfa3007aa94a5c…
You're receiving this email because of your account on dev.gajim.org.
Philipp Hörist pushed to branch master at gajim / gajim
Commits:
cf7ba8d7 by Philipp Hörist at 2018-10-06T22:13:08Z
Update ChangeLog
- - - - -
1 changed file:
- ChangeLog
Changes:
=====================================
ChangeLog
=====================================
@@ -1,3 +1,30 @@
+Gajim 1.0.99.1 (07 October 2018)
+
+ New
+
+ * Implement XEP-0398
+ * MUC: Set Threshold for requesting history
+ * Show icon for unencrypted messages
+ * Support more media players for broadcasting the current tune
+ * Windows: Add a debug logging switch in preferences
+ * Preferences: enable/disable dark theme
+ * Preferences: enable/disable the MUC subject beeing shown on join
+ * Preferences: enable/disable ascii emoji conversion
+
+ Bug fixes
+
+ * 9198 Creating new MUCs with captial letters is not possible
+ * 9210 Error when clicking on new message indicator
+ * 9280 Inviting users to a MUC causes error
+ * 9301 Error when opening service discovery window
+ * 9309 Error when clicking on a groupchat invite notification
+ * 9311 Error when requesting server info
+ * 9117 Windows UAC changes status not available
+ * 9324 No menus/dialogs on Win7
+ * 9326 IPV6 Connection problem on Win10
+ * 9334 Joining big MUCs takes very long
+ * 9339 Error caused by remote_control
+
Gajim 1.0.99 (19 August 2018)
New
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/cf7ba8d790f9629db972e07cf66b03c9ee…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/cf7ba8d790f9629db972e07cf66b03c9ee…
You're receiving this email because of your account on dev.gajim.org.
Philipp Hörist pushed to branch master at gajim / gajim
Commits:
cea5231c by Philipp Hörist at 2018-10-06T21:08:53Z
Dont show joined message on status change
- - - - -
1 changed file:
- gajim/groupchat_control.py
Changes:
=====================================
gajim/groupchat_control.py
=====================================
@@ -1858,10 +1858,11 @@ class GroupchatControl(ChatControlBase):
# init
if obj.status_code and obj.nick == self.nick:
if '110' in obj.status_code:
- # We just join the room
- self.print_conversation(
- _('You (%s) joined the room') % self.nick,
- 'info', graphics=False)
+ if not self.is_connected:
+ # We just join the room
+ self.print_conversation(
+ _('You (%s) joined the room') % self.nick,
+ 'info', graphics=False)
if self.room_jid in app.automatic_rooms[self.account] and \
app.automatic_rooms[self.account][self.room_jid]['invities']:
if self.room_jid not in app.interface.instances[
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/cea5231c79aabc8a44c19e9dc0ef9d9b2c…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/cea5231c79aabc8a44c19e9dc0ef9d9b2c…
You're receiving this email because of your account on dev.gajim.org.
Philipp Hörist pushed to branch master at gajim / gajim
Commits:
ca467421 by Philipp Hörist at 2018-10-06T21:04:28Z
Fix missing imports
- - - - -
74bb8cec by Philipp Hörist at 2018-10-06T21:06:07Z
Fix pylint error
- - - - -
a26c4f16 by Philipp Hörist at 2018-10-06T21:06:22Z
Update .pylintrc
- - - - -
5 changed files:
- gajim/command_system/implementation/middleware.py
- gajim/command_system/mapping.py
- gajim/common/contacts.py
- gajim/logind_listener.py
- pylintrc
Changes:
=====================================
gajim/command_system/implementation/middleware.py
=====================================
@@ -34,7 +34,9 @@ don't need to dig up the code itself to write basic commands.
from traceback import print_exc
from gi.repository import Pango
+
from gajim.common import app
+from gajim.common.i18n import _
from gajim.command_system.framework import CommandProcessor
from gajim.command_system.errors import CommandError, NoCommandError
=====================================
gajim/command_system/mapping.py
=====================================
@@ -25,6 +25,8 @@ according to the command properties.
import re
from operator import itemgetter
+from gajim.common.i18n import _
+
from gajim.command_system.errors import DefinitionError, CommandError
# Quite complex piece of regular expression logic to parse options and
=====================================
gajim/common/contacts.py
=====================================
@@ -26,6 +26,7 @@
try:
from gajim.common import caps_cache
+ from gajim.common.i18n import _
from gajim.common.account import Account
from gajim import common
from gajim.common.const import Chatstate
@@ -401,8 +402,8 @@ class LegacyContactsAPI:
for jid in self.get_jid_list(account):
if jid == our_jid:
continue
- if common.app.jid_is_transport(jid) and not \
- _('Transports') in groups:
+ if (common.app.jid_is_transport(jid) and
+ _('Transports') not in groups):
# do not count transports
continue
if self.has_brother(account, jid, accounts) and not \
=====================================
gajim/logind_listener.py
=====================================
@@ -25,6 +25,7 @@ import logging
from gi.repository import Gio, GLib
from gajim.common import app
+from gajim.common.i18n import _
log = logging.getLogger('gajim.logind_listener')
=====================================
pylintrc
=====================================
@@ -94,7 +94,7 @@ max-nested-blocks=5
# List of additional names supposed to be defined in builtins. Remember that
# you should avoid to define new builtins when possible.
-additional-builtins=_
+additional-builtins=
# Tells whether unused global variables should be treated as a violation.
allow-global-unused-variables=yes
View it on GitLab: https://dev.gajim.org/gajim/gajim/compare/ad4e1258d32a13475f1254b35cf9d94d0…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/compare/ad4e1258d32a13475f1254b35cf9d94d0…
You're receiving this email because of your account on dev.gajim.org.
Philipp Hörist pushed to branch master at gajim / gajim
Commits:
bf87ad5a by Philipp Hörist at 2018-10-06T20:38:55Z
Import _() instead of using builtin namespace
- Prepare for removing the global installed _() method in builtins
- Sort some imports along the way
- - - - -
ad4e1258 by Philipp Hörist at 2018-10-06T20:44:26Z
Improve finding locale dir
- Dont install _() globally, although its elegant mypy cant deal with it
- If gettext cant find the translation itself, iter through all dirs and search for it
- - - - -
30 changed files:
- gajim/adhoc_commands.py
- gajim/application.py
- gajim/atom_window.py
- gajim/chat_control.py
- gajim/chat_control_base.py
- gajim/common/connection.py
- gajim/common/connection_handlers_events.py
- gajim/common/exceptions.py
- gajim/common/i18n.py
- gajim/common/jingle_rtp.py
- gajim/common/logger.py
- gajim/common/logging_helpers.py
- gajim/common/modules/httpupload.py
- gajim/common/modules/message.py
- gajim/common/modules/presence.py
- gajim/common/modules/roster_item_exchange.py
- gajim/common/multimedia_helpers.py
- gajim/common/optparser.py
- gajim/common/zeroconf/connection_handlers_zeroconf.py
- gajim/common/zeroconf/connection_zeroconf.py
- gajim/common/zeroconf/zeroconf_avahi.py
- gajim/common/zeroconf/zeroconf_bonjour.py
- gajim/config.py
- gajim/conversation_textview.py
- gajim/dataforms_widget.py
- gajim/filetransfers_window.py
- gajim/groupchat_control.py
- gajim/gtk/about.py
- gajim/gtk/account_wizard.py
- gajim/gtk/accounts.py
The diff was not included because it is too large.
View it on GitLab: https://dev.gajim.org/gajim/gajim/compare/990a35f9d847504a081b0ede7f7a9037e…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/compare/990a35f9d847504a081b0ede7f7a9037e…
You're receiving this email because of your account on dev.gajim.org.
Philipp Hörist pushed to branch master at gajim / gajim
Commits:
e8c5ad64 by Philipp Hörist at 2018-10-05T20:42:36Z
Better determine when we fully joined a muc
- - - - -
1e933c26 by Philipp Hörist at 2018-10-05T21:21:50Z
Dont show MUC subject on rejoin
- We only show it, if it changed
- - - - -
dbd25c59 by Philipp Hörist at 2018-10-05T21:47:59Z
Fix textview sorting
- - - - -
259f5e36 by Philipp Hörist at 2018-10-05T21:57:54Z
MUC: Show timestamp also for info messages
- - - - -
fd232ce6 by Philipp Hörist at 2018-10-05T22:01:07Z
MUC: Show info message that we joined the room
- - - - -
990a35f9 by Philipp Hörist at 2018-10-05T22:35:24Z
MUC: Add option for showing the subject on join
- - - - -
5 changed files:
- gajim/common/config.py
- gajim/conversation_textview.py
- gajim/data/gui/preferences_window.ui
- gajim/groupchat_control.py
- gajim/gtk/preferences.py
Changes:
=====================================
gajim/common/config.py
=====================================
@@ -296,6 +296,7 @@ class Config:
'threshold_options': [opt_str, '1, 2, 4, 10, 0', _('Options in days which can be chosen in the sync threshold menu'), True],
'public_room_sync_threshold': [opt_int, 1, _('Maximum history in days we request from a public room archive. 0: As much as possible')],
'private_room_sync_threshold': [opt_int, 0, _('Maximum history in days we request from a private room archive. 0: As much as possible')],
+ 'show_subject_on_join': [opt_bool, True, _('If the room subject is shown in chat on join')],
}, {}) # type: Tuple[Dict[str, List[Any]], Dict[Any, Any]]
__options_per_key = {
=====================================
gajim/conversation_textview.py
=====================================
@@ -1072,7 +1072,7 @@ class ConversationTextview(GObject.GObject):
new_mark = buffer_.create_mark(
str(self.line), temp_iter, left_gravity=False)
- if not index:
+ if index is None:
# New Message
self.message_list.append((tim, new_mark, msg_stanza_id))
elif corrected:
@@ -1186,7 +1186,7 @@ class ConversationTextview(GObject.GObject):
buffer_ = self.tv.get_buffer()
current_print_time = app.config.get('print_time')
- if current_print_time == 'always' and kind != 'info' and not simple:
+ if current_print_time == 'always' and not simple:
timestamp_str = self.get_time_to_show(local_tim, direction_mark)
timestamp = time.strftime(timestamp_str, local_tim)
timestamp = direction_mark + timestamp + direction_mark
@@ -1195,7 +1195,7 @@ class ConversationTextview(GObject.GObject):
*other_tags_for_time)
else:
buffer_.insert(iter_, timestamp)
- elif current_print_time == 'sometimes' and kind != 'info' and not simple:
+ elif current_print_time == 'sometimes' and not simple:
every_foo_seconds = 60 * app.config.get(
'print_ichat_every_foo_minutes')
seconds_passed = tim - self.last_time_printout
=====================================
gajim/data/gui/preferences_window.ui
=====================================
@@ -401,7 +401,7 @@
</object>
<packing>
<property name="left_attach">0</property>
- <property name="top_attach">5</property>
+ <property name="top_attach">6</property>
<property name="width">2</property>
</packing>
</child>
@@ -498,6 +498,21 @@
<property name="width">2</property>
</packing>
</child>
+ <child>
+ <object class="GtkCheckButton" id="subject_on_join">
+ <property name="label" translatable="yes">Show subject after joining a group chat</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="draw_indicator">True</property>
+ <signal name="toggled" handler="on_subject_on_join_toggled" swapped="no"/>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">5</property>
+ <property name="width">2</property>
+ </packing>
+ </child>
</object>
</child>
<child type="label">
=====================================
gajim/groupchat_control.py
=====================================
@@ -297,6 +297,7 @@ class GroupchatControl(ChatControlBase):
self.force_non_minimizable = False
self.is_continued = is_continued
self.is_anonymous = True
+ self.join_time = 0
# Controls the state of autorejoin.
# None - autorejoin is neutral.
@@ -370,7 +371,6 @@ class GroupchatControl(ChatControlBase):
# sorted list of nicks who mentioned us (last at the end)
self.attention_list = []
- self.room_creation = int(time.time()) # Use int to reduce mem usage
self.nick_hits = []
self.last_key_tabs = False
@@ -1536,6 +1536,9 @@ class GroupchatControl(ChatControlBase):
return
if event.jid != self.room_jid:
return
+ if self.subject == event.subject:
+ # Probably a rejoin, we already showed that subject
+ return
self.set_subject(event.subject)
text = _('%(nick)s has set the subject to %(subject)s') % {
'nick': event.nickname, 'subject': event.subject}
@@ -1544,7 +1547,10 @@ class GroupchatControl(ChatControlBase):
date = time.strftime('%d-%m-%Y %H:%M:%S',
time.localtime(event.timestamp))
text = '%s - %s' % (text, date)
- self.print_conversation(text)
+
+ just_joined = self.join_time > time.time() - 10
+ if app.config.get('show_subject_on_join') or not just_joined:
+ self.print_conversation(text)
if event.subject == '':
self.subject_button.hide()
@@ -1641,6 +1647,7 @@ class GroupchatControl(ChatControlBase):
app.gc_connected[self.account][self.room_jid] = value
def got_connected(self):
+ self.join_time = time.time()
# Make autorejoin stop.
if self.autorejoin:
GLib.source_remove(self.autorejoin)
@@ -1851,6 +1858,9 @@ class GroupchatControl(ChatControlBase):
if obj.status_code and obj.nick == self.nick:
if '110' in obj.status_code:
# We just join the room
+ self.print_conversation(
+ _('You (%s) joined the room') % self.nick,
+ 'info', graphics=False)
if self.room_jid in app.automatic_rooms[self.account] and \
app.automatic_rooms[self.account][self.room_jid]['invities']:
if self.room_jid not in app.interface.instances[
@@ -2056,7 +2066,7 @@ class GroupchatControl(ChatControlBase):
gc_c.affiliation = affiliation
gc_c.status = obj.status
self.draw_contact(obj.nick)
- if (time.time() - self.room_creation) > 30 and obj.nick != self.nick \
+ if self.is_connected and obj.nick != self.nick \
and (not obj.status_code or '303' not in obj.status_code) and not \
right_changed:
st = ''
=====================================
gajim/gtk/preferences.py
=====================================
@@ -142,6 +142,9 @@ class Preferences(Gtk.ApplicationWindow):
st = app.config.get('positive_184_ack')
self.xml.get_object('positive_184_ack_checkbutton').set_active(st)
+ st = app.config.get('show_subject_on_join')
+ self.xml.get_object('subject_on_join').set_active(st)
+
# Show avatar in tabs
st = app.config.get('show_avatar_in_tabs')
self.xml.get_object('show_avatar_in_tabs_checkbutton').set_active(st)
@@ -500,6 +503,9 @@ class Preferences(Gtk.ApplicationWindow):
return 'mixed'
return val
+ def on_subject_on_join_toggled(self, widget):
+ app.config.set('show_subject_on_join', widget.get_active())
+
def on_checkbutton_toggled(self, widget, config_name,
change_sensitivity_widgets=None):
app.config.set(config_name, widget.get_active())
View it on GitLab: https://dev.gajim.org/gajim/gajim/compare/b049746418a114b2c3fce7c165943f57f…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/compare/b049746418a114b2c3fce7c165943f57f…
You're receiving this email because of your account on dev.gajim.org.