summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormathieui <mathieui@mathieui.net>2020-05-28 00:28:23 +0200
committermathieui <mathieui@mathieui.net>2020-05-28 00:30:13 +0200
commit9e3958c67d2e7d16a069b50ef2e76d92280b6584 (patch)
treee40ecac3e9c886f9027f9f9a30d070914e94ec4c
parent5cf90368c66e0ccc3a93e51911f8fa82b496e02b (diff)
downloadpoezio-9e3958c67d2e7d16a069b50ef2e76d92280b6584.tar.gz
poezio-9e3958c67d2e7d16a069b50ef2e76d92280b6584.tar.bz2
poezio-9e3958c67d2e7d16a069b50ef2e76d92280b6584.tar.xz
poezio-9e3958c67d2e7d16a069b50ef2e76d92280b6584.zip
Only add autojoin to a bookmark on creation if the room is not bookmarked
With synchronise_open_rooms, otherwise you just have autojoin added everytime, which is probably not what you want.
-rw-r--r--CHANGELOG1
-rw-r--r--poezio/bookmarks.py2
-rw-r--r--poezio/core/commands.py2
3 files changed, 3 insertions, 2 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 89385eac..cf065224 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -11,6 +11,7 @@ https://dev.louiz.org/projects/poezio/roadmap
- Contacts won’t be seen playing games or music when they actually stop doing
so.
- /leave now toggles off the autojoin flag instead of removing the bookmark.
+- Only add auotjoin on new bookmarks for synchronise_open_rooms on /join
- /affiliation displays things in the info win instead of directly in the room,
and additionally displays which room it refers to.
- List the correct required versions for package maintainers.
diff --git a/poezio/bookmarks.py b/poezio/bookmarks.py
index ccda2b93..d842d2dd 100644
--- a/poezio/bookmarks.py
+++ b/poezio/bookmarks.py
@@ -171,7 +171,7 @@ class BookmarkList:
return self.bookmarks[key]
return None
- def __in__(self, key) -> bool:
+ def __contains__(self, key) -> bool:
if isinstance(key, (str, JID)):
for bookmark in self.bookmarks:
if bookmark.jid == key:
diff --git a/poezio/core/commands.py b/poezio/core/commands.py
index 176d0e73..6fc800ae 100644
--- a/poezio/core/commands.py
+++ b/poezio/core/commands.py
@@ -401,7 +401,7 @@ class CommandCore:
tab.password = password
tab.join()
- if config.get('synchronise_open_rooms'):
+ if config.get('synchronise_open_rooms') and room not in self.core.bookmarks:
method = 'remote' if config.get(
'use_remote_bookmarks') else 'local'
self._add_bookmark('%s/%s' % (room, nick), True, password, method)