quick frontend (chat): use right type in getOrCreateWidget on new message

This commit is contained in:
Goffi 2019-01-22 18:52:16 +01:00
commit 687ef5b6bd
2 changed files with 12 additions and 6 deletions

View file

@ -674,7 +674,13 @@ class QuickApp(object):
from_me = from_jid.bare == self.profiles[profile].whoami.bare
target = to_jid if from_me else from_jid
contact_list = self.contact_lists[profile]
if target.resource and not contact_list.isRoom(target.bare):
try:
is_room = contact_list.isRoom(target.bare)
except exceptions.NotFound:
is_room = False
if target.resource and not is_room:
# we avoid resource locking, but we must keep resource for private MUC
# messages
target = target.bare
@ -682,9 +688,9 @@ class QuickApp(object):
self.widgets.getOrCreateWidget(
quick_chat.QuickChat,
target,
type_=C.CHAT_ONE2ONE,
on_new_widget=None,
profile=profile,
type_ = C.CHAT_GROUP if is_room else C.CHAT_ONE2ONE,
on_new_widget = None,
profile = profile,
)
if (

View file

@ -184,13 +184,13 @@ class QuickWidgetsManager(object):
if not "profiles" in _kwargs:
_kwargs["profiles"] = None
# on_new_widget tell what to do for the new widget creation
# on_new_widget tells what to do for the new widget creation
try:
on_new_widget = _kwargs.pop("on_new_widget")
except KeyError:
on_new_widget = C.WIDGET_NEW
# on_existing_widget tell what to do when the widget already exists
# on_existing_widget tells what to do when the widget already exists
try:
on_existing_widget = _kwargs.pop("on_existing_widget")
except KeyError: