summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxime Buquet <pep@bouah.net>2020-05-31 01:35:26 +0200
committerMaxime Buquet <pep@bouah.net>2020-05-31 01:35:26 +0200
commitce9d59f19e2a4b2150de66bee1159931158e8009 (patch)
tree7313bde4e1fa11db0f9f28927f694c696be5a64b
parentab9108e00a631d9b600d51999b9a9c765cf3f0d4 (diff)
parent21c45ff72e23b66c04d56a6ac5d832dd564baf65 (diff)
downloadpoezio-ce9d59f19e2a4b2150de66bee1159931158e8009.tar.gz
poezio-ce9d59f19e2a4b2150de66bee1159931158e8009.tar.bz2
poezio-ce9d59f19e2a4b2150de66bee1159931158e8009.tar.xz
poezio-ce9d59f19e2a4b2150de66bee1159931158e8009.zip
Merge branch 'type-bookmarks' into 'master'
Type bookmarks See merge request poezio/poezio!138
-rw-r--r--poezio/bookmarks.py8
-rw-r--r--poezio/core/commands.py6
-rw-r--r--poezio/tabs/bookmarkstab.py2
3 files changed, 9 insertions, 7 deletions
diff --git a/poezio/bookmarks.py b/poezio/bookmarks.py
index d842d2dd..46f6dfab 100644
--- a/poezio/bookmarks.py
+++ b/poezio/bookmarks.py
@@ -30,7 +30,7 @@ Adding a remote bookmark:
import functools
import logging
-from typing import Optional, List, Union
+from typing import Optional, List, Literal, Union
from slixmpp import InvalidJID, JID
from slixmpp.plugins.xep_0048 import Bookmarks, Conference, URL
@@ -39,6 +39,8 @@ from poezio.config import config
log = logging.getLogger(__name__)
+Method = Union[Literal['local'], Literal['remote']]
+
class Bookmark:
def __init__(self,
jid: Union[JID, str],
@@ -46,7 +48,7 @@ class Bookmark:
autojoin=False,
nick: Optional[str] = None,
password: Optional[str] = None,
- method='local') -> None:
+ method: Method = 'local') -> None:
try:
if isinstance(jid, JID):
self._jid = jid
@@ -82,7 +84,7 @@ class Bookmark:
return self._method
@method.setter
- def method(self, value: str):
+ def method(self, value: Method):
if value not in ('local', 'remote'):
log.debug('Could not set bookmark storing method: %s', value)
return
diff --git a/poezio/core/commands.py b/poezio/core/commands.py
index 6fc800ae..98acef32 100644
--- a/poezio/core/commands.py
+++ b/poezio/core/commands.py
@@ -18,7 +18,7 @@ from poezio import common
from poezio import pep
from poezio import tabs
from poezio import multiuserchat as muc
-from poezio.bookmarks import Bookmark
+from poezio.bookmarks import Bookmark, Method as BookmarkMethod
from poezio.common import safeJID
from poezio.config import config, DEFAULT_CONFIG, options as config_opts
from poezio.contact import Contact, Resource
@@ -444,7 +444,7 @@ class CommandCore:
self._add_bookmark(jid, autojoin, password, 'remote')
- def _add_bookmark(self, jid, autojoin, password, method):
+ def _add_bookmark(self, jid: str, autojoin: bool, password: str, method: BookmarkMethod) -> None:
nick = None
if not jid:
tab = self.core.tabs.current_tab
@@ -478,7 +478,7 @@ class CommandCore:
self.core.bookmarks.save_remote(self.core.xmpp,
self.core.handler.on_bookmark_result)
- def _add_wildcard_bookmarks(self, method):
+ def _add_wildcard_bookmarks(self, method: BookmarkMethod):
new_bookmarks = []
for tab in self.core.get_tabs(tabs.MucTab):
bookmark = self.core.bookmarks[tab.jid.bare]
diff --git a/poezio/tabs/bookmarkstab.py b/poezio/tabs/bookmarkstab.py
index cb3a4d0c..eb390bd3 100644
--- a/poezio/tabs/bookmarkstab.py
+++ b/poezio/tabs/bookmarkstab.py
@@ -95,7 +95,7 @@ class BookmarksTab(Tab):
def send_cb(success):
if success:
- self.core.information('Bookmarks saved.', 'Info')
+ self.core.information('Bookmarks saved', 'Info')
else:
self.core.information('Remote bookmarks not saved.', 'Error')