diff options
author | mathieui <mathieui@mathieui.net> | 2021-04-10 22:50:29 +0200 |
---|---|---|
committer | mathieui <mathieui@mathieui.net> | 2021-04-11 16:33:53 +0200 |
commit | bf8965fb4b6bb2c256e489069d1c2216e064b0ed (patch) | |
tree | a013d71b1935b88a6d2dac58ec01a7f7d1930ff9 /poezio/tabs | |
parent | 48abe2ad7ebafae60558895e737b2295decdfcb2 (diff) | |
download | poezio-bf8965fb4b6bb2c256e489069d1c2216e064b0ed.tar.gz poezio-bf8965fb4b6bb2c256e489069d1c2216e064b0ed.tar.bz2 poezio-bf8965fb4b6bb2c256e489069d1c2216e064b0ed.tar.xz poezio-bf8965fb4b6bb2c256e489069d1c2216e064b0ed.zip |
feature: Add a MAM history filler
Diffstat (limited to 'poezio/tabs')
-rw-r--r-- | poezio/tabs/basetabs.py | 2 | ||||
-rw-r--r-- | poezio/tabs/muctab.py | 9 |
2 files changed, 7 insertions, 4 deletions
diff --git a/poezio/tabs/basetabs.py b/poezio/tabs/basetabs.py index 306c79f9..0a31931b 100644 --- a/poezio/tabs/basetabs.py +++ b/poezio/tabs/basetabs.py @@ -967,7 +967,7 @@ class ChatTab(Tab): if not self.query_status: from poezio.log_loader import LogLoader asyncio.ensure_future( - LogLoader(logger, self).scroll_requested() + LogLoader(logger, self, config.get('use_log')).scroll_requested() ) return self.text_win.scroll_up(self.text_win.height - 1) diff --git a/poezio/tabs/muctab.py b/poezio/tabs/muctab.py index 54e78c72..9334ce4c 100644 --- a/poezio/tabs/muctab.py +++ b/poezio/tabs/muctab.py @@ -48,7 +48,7 @@ from poezio.config import config from poezio.core.structs import Command from poezio.decorators import refresh_wrapper, command_args_parser from poezio.logger import logger -from poezio.log_loader import LogLoader +from poezio.log_loader import LogLoader, MAMFiller from poezio.roster import roster from poezio.theming import get_theme, dump_tuple from poezio.user import User @@ -83,7 +83,8 @@ class MucTab(ChatTab): plugin_commands: Dict[str, Command] = {} plugin_keys: Dict[str, Callable[..., Any]] = {} additional_information: Dict[str, Callable[[str], str]] = {} - lagged = False + lagged: bool = False + mam_filler: Optional[MAMFiller] def __init__(self, core: Core, jid: JID, nick: str, password: Optional[str] = None) -> None: ChatTab.__init__(self, core, jid) @@ -104,6 +105,7 @@ class MucTab(ChatTab): self.topic_from = '' # Self ping event, so we can cancel it when we leave the room self.self_ping_event: Optional[timed_events.DelayedEvent] = None + self.mam_filler = None # UI stuff self.topic_win = windows.Topic() self.v_separator = windows.VerticalSeparator() @@ -179,6 +181,7 @@ class MucTab(ChatTab): seconds = None if last_message is not None: seconds = (datetime.now() - last_message.time).seconds + self.mam_filler = MAMFiller(self, logger) muc.join_groupchat( self.core, self.jid.bare, @@ -605,7 +608,7 @@ class MucTab(ChatTab): ), ) asyncio.ensure_future( - LogLoader(logger, self).tab_open(), + LogLoader(logger, self, config.get('use_log')).tab_open(), ) def handle_presence_joined(self, presence: Presence, status_codes: Set[int]) -> None: |