It is possible to delete conversation buffers from the tree

This commit is contained in:
Manuel Cortez 2019-01-11 04:14:55 -06:00
parent a28c088c06
commit a60edfdd37
2 changed files with 16 additions and 2 deletions

View File

@ -10,6 +10,7 @@
* When displaying someone's profile, the dialog should be loaded dramatically faster than before. A message will be spoken when all data of the profile is loaded.
* When opening a timeline, if the current user is not allowed to do it, an error message should be displayed and the buffer will not be created. Before the buffer was partially created in the main window. ([#22.](https://code.manuelcortez.net/manuelcortez/socializer/issues/22))
* Added basic support to handle group chats. At the current moment it is possible to receive and reply to chat messages only. Chat groups will be placed inside the conversations section. ([#23.](https://code.manuelcortez.net/manuelcortez/socializer/issues/23))
* It is possible to delete a conversation buffer from the buffer menu. Deleting a conversation will only dismiss the buffer, no data is deleted at VK.
* It is possible to see how many people has read a wall post when showing it in the dialog. ([#28.](https://code.manuelcortez.net/manuelcortez/socializer/issues/28))
* Added functionality regarding comments in wall posts:
* when reading a post, you can press enter in any comment to display a dialog from where it is possible to view attachments, translate, check spelling or reply to the thread. If there are replies made to this comment, these will be visible in a section called replies. Pressing enter in a reply will also open the same dialog.

View File

@ -443,8 +443,9 @@ class feedBuffer(baseBuffer):
if "owner_id" not in self.kwargs:
return super(feedBuffer, self).post()
owner_id = self.kwargs["owner_id"]
user = self.session.get_user_name(owner_id)
p = presenters.createPostPresenter(session=self.session, interactor=interactors.createPostInteractor(), view=views.createPostDialog(title=_("Write your post"), message="", text=""))
user = self.session.get_user(owner_id, key="user1")
title = _("Post to {user1_nom]'s wall").format(**user)
p = presenters.createPostPresenter(session=self.session, interactor=interactors.createPostInteractor(), view=views.createPostDialog(title=title, message="", text=""))
if hasattr(p, "text") or hasattr(p, "privacy"):
call_threaded(self.do_last, p=p, owner_id=owner_id)
@ -1011,6 +1012,18 @@ class chatBuffer(baseBuffer):
if "read_state" in i and i["read_state"] == 0:
i["read_state"] = 1
def remove_buffer(self, mandatory=False):
""" Remove buffer if the current buffer is not the logged user's wall."""
if mandatory == False:
dlg = commonMessages.remove_buffer()
else:
dlg = widgetUtils.YES
if dlg == widgetUtils.YES:
self.session.db.pop(self.name)
return True
else:
return False
class peopleBuffer(feedBuffer):
def create_tab(self, parent):