Merge branch 'type-bookmarks' into 'master'
Type bookmarks See merge request poezio/poezio!138
This commit is contained in:
commit
ce9d59f19e
3 changed files with 9 additions and 7 deletions
|
@ -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
|
||||
|
|
|
@ -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]
|
||||
|
|
|
@ -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')
|
||||
|
||||
|
|
Loading…
Reference in a new issue