Philipp Hörist pushed to branch master at gajim / gajim
Commits:
835bffd8 by Sophie Herold at 2018-08-06T17:07:42Z
Fix broken history search
- - - - -
1 changed file:
- gajim/gtk/history.py
Changes:
=====================================
gajim/gtk/history.py
=====================================
--- a/gajim/gtk/history.py
+++ b/gajim/gtk/history.py
@@ -709,8 +709,8 @@ class HistoryWindow:
# make it a tuple (Y, M, D, 0, 0, 0...)
tim = time.strptime(model[path][Column.UNIXTIME], '%Y-%m-%d')
year = tim[0]
- gtk_month = tim[1]
- month = gtk_month(gtk_month)
+ gtk_m = tim[1]
+ month = gtk_month(gtk_m)
day = tim[2]
# switch to belonging logfile if necessary
@@ -719,10 +719,10 @@ class HistoryWindow:
self._load_history(log_jid, None)
# avoid reruning mark days algo if same month and year!
- if year != cur_year or gtk_month != cur_month:
+ if year != cur_year or gtk_m != cur_month:
self.calendar.select_month(month, year)
- if year != cur_year or gtk_month != cur_month or day != cur_day:
+ if year != cur_year or gtk_m != cur_month or day != cur_day:
self.calendar.select_day(day)
self._scroll_to_message_and_highlight(model[path][Column.LOG_LINE_ID])
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/835bffd8932aecd4a170c16ec164c708a7…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/835bffd8932aecd4a170c16ec164c708a7…
You're receiving this email because of your account on dev.gajim.org.
Philipp Hörist pushed to branch master at gajim / gajim
Commits:
94b2d1e5 by Philipp Hörist at 2018-08-06T16:25:52Z
Fix passing too many args
- - - - -
2 changed files:
- gajim/gtk/util.py
- gajim/gtkgui_helpers.py
Changes:
=====================================
gajim/gtk/util.py
=====================================
--- a/gajim/gtk/util.py
+++ b/gajim/gtk/util.py
@@ -68,7 +68,7 @@ def get_builder(file_name, widget=None):
if widget is not None:
builder.add_objects_from_string(xml_text, [widget])
else:
- builder.add_from_string(xml_text, -1)
+ builder.add_from_string(xml_text)
else:
if widget is not None:
builder.add_objects_from_file(file_path, [widget])
=====================================
gajim/gtkgui_helpers.py
=====================================
--- a/gajim/gtkgui_helpers.py
+++ b/gajim/gtkgui_helpers.py
@@ -144,7 +144,7 @@ def get_gtk_builder(file_name, widget=None):
if widget is not None:
builder.add_objects_from_string(xml_text, [widget])
else:
- builder.add_from_string(xml_text, -1)
+ builder.add_from_string(xml_text)
else:
if widget is not None:
builder.add_objects_from_file(file_path, [widget])
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/94b2d1e577721303495ac5ba180ffebb88…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/94b2d1e577721303495ac5ba180ffebb88…
You're receiving this email because of your account on dev.gajim.org.
Philipp Hörist pushed to branch master at gajim / gajim
Commits:
2e53f47d by Philipp Hörist at 2018-08-06T15:14:07Z
Fix GtkBuilder translation
Fixes #9277
- - - - -
2 changed files:
- gajim/gtk/util.py
- gajim/gtkgui_helpers.py
Changes:
=====================================
gajim/gtk/util.py
=====================================
--- a/gajim/gtk/util.py
+++ b/gajim/gtk/util.py
@@ -51,34 +51,30 @@ def load_icon(icon_name, widget, size=16, pixbuf=False,
def get_builder(file_name, widget=None):
file_path = os.path.join(configpaths.get('GUI'), file_name)
- builder = _translate(file_path, widget)
- builder.set_translation_domain(i18n.DOMAIN)
- return builder
+ builder = Gtk.Builder()
+ builder.set_translation_domain(i18n.DOMAIN)
-def _translate(gui_file, widget):
- """
- This is a workaround for non working translation on Windows
- """
if sys.platform == "win32":
- tree = ET.parse(gui_file)
+ # This is a workaround for non working translation on Windows
+ tree = ET.parse(file_path)
for node in tree.iter():
if 'translatable' in node.attrib:
node.text = _(node.text)
xml_text = ET.tostring(tree.getroot(),
encoding='unicode',
method='xml')
+
if widget is not None:
- builder = Gtk.Builder()
builder.add_objects_from_string(xml_text, [widget])
- return builder
- return Gtk.Builder.new_from_string(xml_text, -1)
+ else:
+ builder.add_from_string(xml_text, -1)
else:
if widget is not None:
- builder = Gtk.Builder()
- builder.add_objects_from_file(gui_file, [widget])
- return builder
- return Gtk.Builder.new_from_file(gui_file)
+ builder.add_objects_from_file(file_path, [widget])
+ else:
+ builder.add_from_file(file_path)
+ return builder
def get_iconset_name_for(name):
=====================================
gajim/gtkgui_helpers.py
=====================================
--- a/gajim/gtkgui_helpers.py
+++ b/gajim/gtkgui_helpers.py
@@ -127,33 +127,30 @@ def get_image_button(icon_name, tooltip, toggle=False):
def get_gtk_builder(file_name, widget=None):
file_path = os.path.join(configpaths.get('GUI'), file_name)
- builder = _translate(file_path, widget)
+
+ builder = Gtk.Builder()
builder.set_translation_domain(i18n.DOMAIN)
- return builder
-def _translate(gui_file, widget):
- """
- This is a workaround for non working translation on Windows
- """
if sys.platform == "win32":
- tree = ET.parse(gui_file)
+ # This is a workaround for non working translation on Windows
+ tree = ET.parse(file_path)
for node in tree.iter():
if 'translatable' in node.attrib:
node.text = _(node.text)
xml_text = ET.tostring(tree.getroot(),
encoding='unicode',
method='xml')
+
if widget is not None:
- builder = Gtk.Builder()
builder.add_objects_from_string(xml_text, [widget])
- return builder
- return Gtk.Builder.new_from_string(xml_text, -1)
+ else:
+ builder.add_from_string(xml_text, -1)
else:
if widget is not None:
- builder = Gtk.Builder()
- builder.add_objects_from_file(gui_file, [widget])
- return builder
- return Gtk.Builder.new_from_file(gui_file)
+ builder.add_objects_from_file(file_path, [widget])
+ else:
+ builder.add_from_file(file_path)
+ return builder
def get_completion_liststore(entry):
"""
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/2e53f47da80e03dc5489609f3b294ec2bb…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/2e53f47da80e03dc5489609f3b294ec2bb…
You're receiving this email because of your account on dev.gajim.org.
Philipp Hörist pushed to branch master at gajim / gajim
Commits:
2ce78334 by Philipp Hörist at 2018-08-04T19:41:44Z
Fix direct MUC invite
- - - - -
1 changed file:
- gajim/common/modules/muc.py
Changes:
=====================================
gajim/common/modules/muc.py
=====================================
--- a/gajim/common/modules/muc.py
+++ b/gajim/common/modules/muc.py
@@ -312,8 +312,8 @@ class MUC:
password = app.gc_passwords.get(room, None)
if password:
attrs['password'] = password
- message = message.addChild(name='x', attrs=attrs,
- namespace=nbxmpp.NS_CONFERENCE)
+ message.addChild(name='x', attrs=attrs,
+ namespace=nbxmpp.NS_CONFERENCE)
return message
def _build_mediated_invite(self, room, to, reason, continue_):
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/2ce78334ca7077aa154f6e63b7a2783ef6…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/2ce78334ca7077aa154f6e63b7a2783ef6…
You're receiving this email because of your account on dev.gajim.org.
Philipp Hörist pushed to branch master at gajim / gajim
Commits:
92af78f1 by Philipp Hörist at 2018-08-04T18:14:28Z
Move history window into gtk folder
- fix some pep8 warnings
- - - - -
7 changed files:
- gajim/app_actions.py
- gajim/chat_control_base.py
- gajim/gtk/__init__.py
- gajim/history_window.py → gajim/gtk/history.py
- gajim/gtk/util.py
- gajim/history_manager.py
- gajim/roster_window.py
Changes:
=====================================
gajim/app_actions.py
=====================================
--- a/gajim/app_actions.py
+++ b/gajim/app_actions.py
@@ -24,7 +24,6 @@ from gajim import dialogs
from gajim.gtk import shortcuts_window
from gajim import accounts_window
import gajim.plugins.gui
-from gajim import history_window
from gajim import disco
from gajim.gtk.history_sync import HistorySyncAssistant
from gajim.gtk.server_info import ServerInfoDialog
@@ -39,6 +38,7 @@ from gajim.gtk import PrivacyListsWindow
from gajim.gtk import ManageBookmarksWindow
from gajim.gtk import FeaturesDialog
from gajim.gtk import AccountCreationWizard
+from gajim.gtk import HistoryWindow
# General Actions
@@ -305,8 +305,7 @@ def on_history(action, param):
if 'logs' in interface.instances:
interface.instances['logs'].window.present()
else:
- interface.instances['logs'] = history_window.\
- HistoryWindow()
+ interface.instances['logs'] = HistoryWindow()
def on_open_event(action, param):
=====================================
gajim/chat_control_base.py
=====================================
--- a/gajim/chat_control_base.py
+++ b/gajim/chat_control_base.py
@@ -38,7 +38,6 @@ from gi.repository import Gio
from gajim import gtkgui_helpers
from gajim import message_control
from gajim.gtk import NonModalConfirmationDialog
-from gajim import history_window
from gajim import notify
import re
@@ -432,8 +431,8 @@ class ChatControlBase(MessageControl, ChatCommandProcessor, CommandTools):
app.interface.instances['logs'].window.present()
app.interface.instances['logs'].open_history(jid, self.account)
else:
- app.interface.instances['logs'] = \
- history_window.HistoryWindow(jid, self.account)
+ from gajim.gtk import HistoryWindow
+ app.interface.instances['logs'] = HistoryWindow(jid, self.account)
def change_encryption(self, action, param):
encryption = param.get_string()
@@ -1119,8 +1118,8 @@ class ChatControlBase(MessageControl, ChatCommandProcessor, CommandTools):
app.interface.instances['logs'].window.present()
app.interface.instances['logs'].open_history(jid, self.account)
else:
- app.interface.instances['logs'] = \
- history_window.HistoryWindow(jid, self.account)
+ from gajim.gtk import HistoryWindow
+ app.interface.instances['logs'] = HistoryWindow(jid, self.account)
def _on_send_file(self, action, param):
# get file transfer preference
=====================================
gajim/gtk/__init__.py
=====================================
--- a/gajim/gtk/__init__.py
+++ b/gajim/gtk/__init__.py
@@ -67,3 +67,4 @@ from gajim.gtk.profile import ProfileWindow
from gajim.gtk.features import FeaturesDialog
from gajim.gtk.account_wizard import AccountCreationWizard
from gajim.gtk.service_registration import ServiceRegistration
+from gajim.gtk.history import HistoryWindow
=====================================
gajim/history_window.py → gajim/gtk/history.py
=====================================
--- a/gajim/history_window.py
+++ b/gajim/gtk/history.py
@@ -1,48 +1,44 @@
-# -*- coding:utf-8 -*-
-## src/history_window.py
-##
-## Copyright (C) 2003-2014 Yann Leboulanger <asterix AT lagaule.org>
-## Copyright (C) 2005 Vincent Hanquez <tab AT snarc.org>
-## Copyright (C) 2005-2006 Nikos Kouremenos <kourem AT gmail.com>
-## Copyright (C) 2006 Dimitur Kirov <dkirov AT gmail.com>
-## Travis Shirk <travis AT pobox.com>
-## Copyright (C) 2006-2008 Jean-Marie Traissard <jim AT lapin.org>
-## Copyright (C) 2007-2008 Stephan Erb <steve-e AT h3c.de>
-## Copyright (C) 2008 Brendan Taylor <whateley AT gmail.com>
-##
-## This file is part of Gajim.
-##
-## Gajim is free software; you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published
-## by the Free Software Foundation; version 3 only.
-##
-## Gajim is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-## GNU General Public License for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with Gajim. If not, see <http://www.gnu.org/licenses/>.
-##
+# Copyright (C) 2003-2014 Yann Leboulanger <asterix AT lagaule.org>
+# Copyright (C) 2005 Vincent Hanquez <tab AT snarc.org>
+# Copyright (C) 2005-2006 Nikos Kouremenos <kourem AT gmail.com>
+# Copyright (C) 2006 Dimitur Kirov <dkirov AT gmail.com>
+# Travis Shirk <travis AT pobox.com>
+# Copyright (C) 2006-2008 Jean-Marie Traissard <jim AT lapin.org>
+# Copyright (C) 2007-2008 Stephan Erb <steve-e AT h3c.de>
+# Copyright (C) 2008 Brendan Taylor <whateley AT gmail.com>
+#
+# This file is part of Gajim.
+#
+# Gajim is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published
+# by the Free Software Foundation; version 3 only.
+#
+# Gajim is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Gajim. If not, see <http://www.gnu.org/licenses/>.
-from gi.repository import Gtk
-from gi.repository import Gdk
-from gi.repository import GLib
import time
import datetime
-
from enum import IntEnum, unique
-from gajim import gtkgui_helpers
+from gi.repository import Gtk
+from gi.repository import Gdk
+from gi.repository import GLib
+
from gajim import conversation_textview
from gajim.gtk import ErrorDialog
-
+from gajim.gtk import util
+from gajim.gtk.util import python_month, gtk_month
from gajim.common import app
from gajim.common import helpers
from gajim.common import exceptions
-
from gajim.common.const import ShowConstant, KindConstant
+
@unique
class InfoColumn(IntEnum):
'''Completion dict'''
@@ -51,6 +47,7 @@ class InfoColumn(IntEnum):
NAME = 2
COMPLETION = 3
+
@unique
class Column(IntEnum):
LOG_JID = 0
@@ -60,13 +57,14 @@ class Column(IntEnum):
TIME = 4
LOG_LINE_ID = 5
+
class HistoryWindow:
"""
Class for browsing logs of conversations with contacts
"""
def __init__(self, jid=None, account=None):
- xml = gtkgui_helpers.get_gtk_builder('history_window.ui')
+ xml = util.get_builder('history_window.ui')
self.window = xml.get_object('history_window')
self.window.set_application(app.app)
self.calendar = xml.get_object('calendar')
@@ -76,7 +74,7 @@ class HistoryWindow:
self.button_last_day = xml.get_object('button_last_day')
scrolledwindow = xml.get_object('scrolledwindow')
self.history_textview = conversation_textview.ConversationTextview(
- account, used_in_history_window = True)
+ account, used_in_history_window=True)
scrolledwindow.add(self.history_textview.tv)
self.history_buffer = self.history_textview.tv.get_buffer()
self.history_buffer.create_tag('highlight', background='yellow')
@@ -102,7 +100,8 @@ class HistoryWindow:
renderer = Gtk.CellRendererText()
col.pack_start(renderer, True)
col.add_attribute(renderer, 'text', Column.CONTACT_NAME)
- col.set_sort_column_id(Column.CONTACT_NAME) # user can click this header and sort
+ # user can click this header and sort
+ col.set_sort_column_id(Column.CONTACT_NAME)
col.set_resizable(True)
col = Gtk.TreeViewColumn(_('Date'))
@@ -110,7 +109,8 @@ class HistoryWindow:
renderer = Gtk.CellRendererText()
col.pack_start(renderer, True)
col.add_attribute(renderer, 'text', Column.UNIXTIME)
- col.set_sort_column_id(Column.UNIXTIME) # user can click this header and sort
+ # user can click this header and sort
+ col.set_sort_column_id(Column.UNIXTIME)
col.set_resizable(True)
col = Gtk.TreeViewColumn(_('Message'))
@@ -120,10 +120,10 @@ class HistoryWindow:
col.add_attribute(renderer, 'text', Column.MESSAGE)
col.set_resizable(True)
- self.jid = None # The history we are currently viewing
+ self.jid = None # The history we are currently viewing
self.account = account
self.completion_dict = {}
- self.accounts_seen_online = [] # Update dict when new accounts connect
+ self.accounts_seen_online = [] # Update dict when new accounts connect
self.jids_to_search = []
# This will load history too
@@ -135,12 +135,12 @@ class HistoryWindow:
else:
self._load_history(None)
- gtkgui_helpers.resize_window(self.window,
- app.config.get('history_window_width'),
- app.config.get('history_window_height'))
- gtkgui_helpers.move_window(self.window,
- app.config.get('history_window_x-position'),
- app.config.get('history_window_y-position'))
+ util.resize_window(self.window,
+ app.config.get('history_window_width'),
+ app.config.get('history_window_height'))
+ util.move_window(self.window,
+ app.config.get('history_window_x-position'),
+ app.config.get('history_window_y-position'))
xml.connect_signals(self)
self.window.show_all()
@@ -161,7 +161,8 @@ class HistoryWindow:
{key : (jid, account, nick_name, full_completion_name}
This is a generator and does pseudo-threading via idle_add().
"""
- liststore = gtkgui_helpers.get_completion_liststore(self.jid_entry.get_child())
+ liststore = util.get_completion_liststore(
+ self.jid_entry.get_child())
liststore.set_sort_column_id(1, Gtk.SortType.ASCENDING)
self.jid_entry.get_child().get_completion().connect(
'match-selected', self.on_jid_entry_match_selected)
@@ -174,12 +175,14 @@ class HistoryWindow:
self.accounts_seen_online = list(app.contacts.get_accounts())
- # Enhance contacts of online accounts with contact. Needed for mapping below
+ # Enhance contacts of online accounts with contact.
+ # Needed for mapping below
for account in self.accounts_seen_online:
- completion_dict.update(helpers.get_contact_dict_for_account(account))
+ completion_dict.update(
+ helpers.get_contact_dict_for_account(account))
- muc_active_icon = gtkgui_helpers.get_iconset_name_for('muc-active')
- online_icon = gtkgui_helpers.get_iconset_name_for('online')
+ muc_active_icon = util.get_iconset_name_for('muc-active')
+ online_icon = util.get_iconset_name_for('online')
keys = list(completion_dict.keys())
# Move the actual jid at first so we load history faster
@@ -209,8 +212,8 @@ class HistoryWindow:
info_acc = self._get_account_for_jid(info_jid)
- if app.logger.jid_is_room_jid(completed) or\
- app.logger.jid_is_from_pm(completed):
+ if (app.logger.jid_is_room_jid(completed) or
+ app.logger.jid_is_from_pm(completed)):
icon = muc_active_icon
if app.logger.jid_is_from_pm(completed):
# It's PM. Make it easier to find
@@ -226,16 +229,16 @@ class HistoryWindow:
if len(completed) > 70:
completed = completed[:70] + '[\u2026]'
liststore.append((icon, completed))
- self.completion_dict[key] = (info_jid, info_acc, info_name,
- info_completion)
- self.completion_dict[completed] = (info_jid, info_acc,
- info_name, info_completion)
+ self.completion_dict[key] = (
+ info_jid, info_acc, info_name, info_completion)
+ self.completion_dict[completed] = (
+ info_jid, info_acc, info_name, info_completion)
if completed2:
if len(completed2) > 70:
completed2 = completed2[:70] + '[\u2026]'
liststore.append((icon, completed2))
- self.completion_dict[completed2] = (info_jid, info_acc,
- info_name, info_completion2)
+ self.completion_dict[completed2] = (
+ info_jid, info_acc, info_name, info_completion2)
if key == actual_jid:
self._load_history(info_jid, self.account or info_acc)
yield True
@@ -295,7 +298,7 @@ class HistoryWindow:
Load history for the given jid/name and show it
"""
if jid_or_name and jid_or_name in self.completion_dict:
- # a full qualified jid or a contact name was entered
+ # a full qualified jid or a contact name was entered
info_jid, info_account, info_name, info_completion = self.completion_dict[jid_or_name]
self.jids_to_search = [info_jid]
self.jid = info_jid
@@ -311,22 +314,22 @@ class HistoryWindow:
self.checkbutton.set_sensitive(False)
else:
# Are log disabled for account ?
- if self.account in app.config.get_per('accounts', self.account,
- 'no_log_for').split(' '):
+ if self.account in app.config.get_per(
+ 'accounts', self.account, 'no_log_for').split(' '):
self.checkbutton.set_active(False)
self.checkbutton.set_sensitive(False)
else:
# Are log disabled for jid ?
log = True
- if self.jid in app.config.get_per('accounts', self.account,
- 'no_log_for').split(' '):
+ if self.jid in app.config.get_per(
+ 'accounts', self.account, 'no_log_for').split(' '):
log = False
self.checkbutton.set_active(log)
self.checkbutton.set_sensitive(True)
self.jids_to_search = [info_jid]
- # Get first/last date we have logs with contact (for log navigation)
+ # Get first/last date we have logs with contact
self.first_log = app.logger.get_first_date_that_has_logs(
self.account, self.jid)
self.first_day = self._get_date_from_timestamp(self.first_log)
@@ -336,9 +339,8 @@ class HistoryWindow:
# Select logs for last date we have logs with contact
self.search_menu_button.set_sensitive(True)
- gtk_month = gtkgui_helpers.make_python_month_gtk_month(
- self.last_day.month)
- self.calendar.select_month(gtk_month, self.last_day.year)
+ month = gtk_month(self.last_day.month)
+ self.calendar.select_month(month, self.last_day.year)
self.calendar.select_day(self.last_day.day)
self.button_previous_day.set_sensitive(True)
@@ -351,12 +353,13 @@ class HistoryWindow:
self.jid_entry.get_child().set_text(info_completion)
- else: # neither a valid jid, nor an existing contact name was entered
+ else:
+ # neither a valid jid, nor an existing contact name was entered
# we have got nothing to show or to search in
self.jid = None
self.account = None
- self.history_buffer.set_text('') # clear the buffer
+ self.history_buffer.set_text('') # clear the buffer
self.search_entry.set_sensitive(False)
self.checkbutton.set_sensitive(False)
@@ -372,26 +375,27 @@ class HistoryWindow:
def on_calendar_day_selected(self, widget):
if not self.jid:
return
- year, month, day = self.calendar.get_date() # integers
- month = gtkgui_helpers.make_gtk_month_python_month(month)
+ year, month, day = self.calendar.get_date() # integers
+ month = python_month(month)
date_str = datetime.date(year, month, day).strftime('%x')
self.date_label.set_text(date_str)
self._load_conversation(year, month, day)
def on_calendar_month_changed(self, widget):
"""
- Ask for days in this month, if they have logs it bolds them (marks them)
+ Ask for days in this month, if they have logs it bolds them
+ (marks them)
"""
if not self.jid:
return
- year, month, day = widget.get_date() # integers
+ year, month, day = widget.get_date() # integers
if year < 1900:
widget.select_month(0, 1900)
widget.select_day(1)
return
widget.clear_marks()
- month = gtkgui_helpers.make_gtk_month_python_month(month)
+ month = python_month(month)
try:
log_days = app.logger.get_days_with_logs(
@@ -413,17 +417,16 @@ class HistoryWindow:
def _change_date(self, widget):
# Get day selected in calendar
y, m, d = self.calendar.get_date()
- py_m = gtkgui_helpers.make_gtk_month_python_month(m)
+ py_m = python_month(m)
_date = datetime.datetime(y, py_m, d)
if widget is self.button_first_day:
- gtk_m = gtkgui_helpers.make_python_month_gtk_month(
- self.first_day.month)
+ gtk_m = gtk_month(self.first_day.month)
self.calendar.select_month(gtk_m, self.first_day.year)
self.calendar.select_day(self.first_day.day)
return
elif widget is self.button_last_day:
- gtk_m = gtkgui_helpers.make_python_month_gtk_month(
+ gtk_m = gtk_month(
self.last_day.month)
self.calendar.select_month(gtk_m, self.last_day.year)
self.calendar.select_day(self.last_day.day)
@@ -453,8 +456,8 @@ class HistoryWindow:
ErrorDialog(_('Disk Error'), str(e))
return
- gtk_month = gtkgui_helpers.make_python_month_gtk_month(_date.month)
- self.calendar.select_month(gtk_month, _date.year)
+ gtk_m = gtk_month(_date.month)
+ self.calendar.select_month(gtk_m, _date.year)
self.calendar.select_day(_date.day)
def _get_string_show_from_constant_int(self, show):
@@ -521,13 +524,13 @@ class HistoryWindow:
buf.insert(end_iter, tim)
elif app.config.get('print_time') == 'sometimes':
every_foo_seconds = 60 * app.config.get(
- 'print_ichat_every_foo_minutes')
+ 'print_ichat_every_foo_minutes')
seconds_passed = tim - self.last_time_printout
if seconds_passed > every_foo_seconds:
self.last_time_printout = tim
tim = time.strftime('%X ', time.localtime(float(tim)))
- buf.insert_with_tags_by_name(end_iter, tim + '\n',
- 'time_sometimes')
+ buf.insert_with_tags_by_name(
+ end_iter, tim + '\n', 'time_sometimes')
tag_name = ''
tag_msg = ''
@@ -536,11 +539,13 @@ class HistoryWindow:
if kind == KindConstant.GC_MSG:
tag_name = 'incoming'
- elif kind in (KindConstant.SINGLE_MSG_RECV, KindConstant.CHAT_MSG_RECV):
+ elif kind in (KindConstant.SINGLE_MSG_RECV,
+ KindConstant.CHAT_MSG_RECV):
contact_name = self.completion_dict[self.jid][InfoColumn.NAME]
tag_name = 'incoming'
tag_msg = 'incomingtxt'
- elif kind in (KindConstant.SINGLE_MSG_SENT, KindConstant.CHAT_MSG_SENT):
+ elif kind in (KindConstant.SINGLE_MSG_SENT,
+ KindConstant.CHAT_MSG_SENT):
if self.account:
contact_name = app.nicks[self.account]
else:
@@ -553,26 +558,29 @@ class HistoryWindow:
elif kind == KindConstant.GCSTATUS:
# message here (if not None) is status message
if message:
- message = _('%(nick)s is now %(status)s: %(status_msg)s') %\
- {'nick': contact_name, 'status': helpers.get_uf_show(show),
- 'status_msg': message }
+ message = _('%(nick)s is now %(status)s: %(status_msg)s') % {
+ 'nick': contact_name,
+ 'status': helpers.get_uf_show(show),
+ 'status_msg': message}
else:
- message = _('%(nick)s is now %(status)s') % {'nick': contact_name,
- 'status': helpers.get_uf_show(show) }
+ message = _('%(nick)s is now %(status)s') % {
+ 'nick': contact_name,
+ 'status': helpers.get_uf_show(show) }
tag_msg = 'status'
- else: # 'status'
+ else: # 'status'
# message here (if not None) is status message
- if show is None: # it means error
+ if show is None: # it means error
if message:
message = _('Error: %s') % message
else:
message = _('Error')
elif message:
- message = _('Status is now: %(status)s: %(status_msg)s') % \
- {'status': helpers.get_uf_show(show), 'status_msg': message}
+ message = _('Status is now: %(status)s: %(status_msg)s') % {
+ 'status': helpers.get_uf_show(show),
+ 'status_msg': message}
else:
- message = _('Status is now: %(status)s') % { 'status':
- helpers.get_uf_show(show) }
+ message = _('Status is now: %(status)s') % {
+ 'status': helpers.get_uf_show(show)}
tag_msg = 'status'
if message.startswith('/me ') or message.startswith('/me\n'):
@@ -586,11 +594,11 @@ class HistoryWindow:
before_str = helpers.from_one_line(before_str)
after_str = app.config.get('after_nickname')
after_str = helpers.from_one_line(after_str)
- format = before_str + contact_name + after_str + ' '
+ format_ = before_str + contact_name + after_str + ' '
if tag_name:
- buf.insert_with_tags_by_name(end_iter, format, tag_name)
+ buf.insert_with_tags_by_name(end_iter, format_, tag_name)
else:
- buf.insert(end_iter, format)
+ buf.insert(end_iter, format_)
if subject:
message = _('Subject: %s\n') % subject + message
xhtml = None
@@ -598,11 +606,17 @@ class HistoryWindow:
xhtml = message
if tag_msg:
- self.history_textview.print_real_text(message, [tag_msg],
- name=contact_name, xhtml=xhtml, additional_data=additional_data)
+ self.history_textview.print_real_text(
+ message, [tag_msg],
+ name=contact_name,
+ xhtml=xhtml,
+ additional_data=additional_data)
else:
- self.history_textview.print_real_text(message, name=contact_name,
- xhtml=xhtml, additional_data=additional_data)
+ self.history_textview.print_real_text(
+ message,
+ name=contact_name,
+ xhtml=xhtml,
+ additional_data=additional_data)
self.history_textview.print_real_text('\n', text_tags=['eol'])
def on_search_complete_history_toggled(self, widget):
@@ -634,23 +648,23 @@ class HistoryWindow:
for jid in self.jids_to_search:
account = self.completion_dict[jid][InfoColumn.ACCOUNT]
if account is None:
- # We do not know an account. This can only happen if the contact is offine,
- # or if we browse a groupchat history. The account is not needed, a dummy can
- # be set.
- # This may leed to wrong self nick in the displayed history (Uggh!)
+ # We do not know an account. This can only happen if
+ # the contact is offine, or if we browse a groupchat history.
+ # The account is not needed, a dummy can be set.
+ # This may leed to wrong self nick in the displayed history
account = list(app.contacts.get_accounts())[0]
date = None
if self.search_in_date.get_active():
- year, month, day = self.calendar.get_date() # integers
- month = gtkgui_helpers.make_gtk_month_python_month(month)
+ year, month, day = self.calendar.get_date() # integers
+ month = python_month(month)
date = datetime.datetime(year, month, day)
show_status = self.show_status_checkbutton.get_active()
results = app.logger.search_log(account, jid, text, date)
result_found = False
- #FIXME:
+ # FIXME:
# add "subject: | message: " in message column if kind is single
# also do we need show at all? (we do not search on subject)
for row in results:
@@ -660,7 +674,7 @@ class HistoryWindow:
contact_name = row.contact_name
if not contact_name:
- if row.kind == KindConstant.CHAT_MSG_SENT: # it's us! :)
+ if row.kind == KindConstant.CHAT_MSG_SENT:
contact_name = app.nicks[account]
else:
contact_name = self.completion_dict[jid][InfoColumn.NAME]
@@ -685,7 +699,7 @@ class HistoryWindow:
# get currently selected date
cur_year, cur_month, cur_day = self.calendar.get_date()
- cur_month = gtkgui_helpers.make_gtk_month_python_month(cur_month)
+ cur_month = python_month(cur_month)
model, paths = self.results_treeview.get_selection().get_selected_rows()
if not paths:
@@ -696,7 +710,7 @@ class HistoryWindow:
tim = time.strptime(model[path][Column.UNIXTIME], '%Y-%m-%d')
year = tim[0]
gtk_month = tim[1]
- month = gtkgui_helpers.make_python_month_gtk_month(gtk_month)
+ month = gtk_month(gtk_month)
day = tim[2]
# switch to belonging logfile if necessary
@@ -740,25 +754,27 @@ class HistoryWindow:
match_end = match_start.copy()
match_end.forward_to_tag_toggle(self.history_buffer.eol_tag)
- self.history_buffer.apply_tag_by_name('highlight', match_start, match_end)
+ self.history_buffer.apply_tag_by_name(
+ 'highlight', match_start, match_end)
mark = self.history_buffer.create_mark('match', match_start, True)
- GLib.idle_add(self.history_textview.tv.scroll_to_mark, mark, 0, True, 0.0, 0.5)
+ GLib.idle_add(
+ self.history_textview.tv.scroll_to_mark, mark, 0, True, 0.0, 0.5)
def on_log_history_checkbutton_toggled(self, widget, *args):
# log conversation history?
oldlog = True
- no_log_for = app.config.get_per('accounts', self.account,
- 'no_log_for').split()
+ no_log_for = app.config.get_per(
+ 'accounts', self.account, 'no_log_for').split()
if self.jid in no_log_for:
oldlog = False
log = widget.get_active()
- if not log and not self.jid in no_log_for:
+ if not log and self.jid not in no_log_for:
no_log_for.append(self.jid)
if log and self.jid in no_log_for:
no_log_for.remove(self.jid)
if oldlog != log:
- app.config.set_per('accounts', self.account, 'no_log_for',
- ' '.join(no_log_for))
+ app.config.set_per(
+ 'accounts', self.account, 'no_log_for', ' '.join(no_log_for))
def on_show_status_checkbutton_toggled(self, widget):
# reload logs
@@ -773,8 +789,8 @@ class HistoryWindow:
# Update dict to not only show bare jid
GLib.idle_add(next, self._fill_completion_dict())
else:
- # Only in that case because it's called by self._fill_completion_dict()
- # otherwise
+ # Only in that case because it's called by
+ # self._fill_completion_dict() otherwise
self._load_history(jid, account)
self.results_window.set_property('visible', False)
=====================================
gajim/gtk/util.py
=====================================
--- a/gajim/gtk/util.py
+++ b/gajim/gtk/util.py
@@ -203,3 +203,11 @@ def get_image_button(icon_name, tooltip, toggle=False):
icon_name, Gtk.IconSize.MENU)
button.set_tooltip_text(tooltip)
return button
+
+
+def python_month(month):
+ return month + 1
+
+
+def gtk_month(month):
+ return month - 1
=====================================
gajim/history_manager.py
=====================================
--- a/gajim/history_manager.py
+++ b/gajim/history_manager.py
@@ -27,7 +27,7 @@
## NOTE: some method names may match those of logger.py but that's it
## someday (TM) should have common class
## that abstracts db connections and helpers on it
-## the same can be said for history_window.py
+## the same can be said for history.py
import os
import sys
=====================================
gajim/roster_window.py
=====================================
--- a/gajim/roster_window.py
+++ b/gajim/roster_window.py
@@ -47,7 +47,6 @@ import logging
from enum import IntEnum, unique
-from gajim import history_window
from gajim import dialogs
from gajim import vcard
from gajim import config
@@ -72,6 +71,7 @@ from gajim.gtk import ManagePEPServicesWindow
from gajim.gtk import ManageBookmarksWindow
from gajim.gtk import AccountCreationWizard
from gajim.gtk import ServiceRegistration
+from gajim.gtk import HistoryWindow
from gajim.common.const import AvatarSize
@@ -3047,8 +3047,7 @@ class RosterWindow:
app.interface.instances['logs'].window.present()
app.interface.instances['logs'].open_history(contact.jid, account)
else:
- app.interface.instances['logs'] = history_window.\
- HistoryWindow(contact.jid, account)
+ app.interface.instances['logs'] = HistoryWindow(contact.jid, account)
def on_disconnect(self, widget, jid, account):
"""
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/92af78f103d2ea33ca8c7e1ae295c29c76…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/commit/92af78f103d2ea33ca8c7e1ae295c29c76…
You're receiving this email because of your account on dev.gajim.org.