Review Request 118237: Show chat rooms in contact list
Dan Vrátil
dvratil at redhat.com
Tue Aug 5 13:15:58 UTC 2014
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/118237/
-----------------------------------------------------------
(Updated Aug. 5, 2014, 3:15 p.m.)
Review request for Telepathy.
Changes
-------
Fixed crashes and bugs when merging contacts - the model was not handling situation when inserted row contained children in the source model. Also some related optimizations.
The crash when enabling groups is still there though. I'm starting to suspect a bug in Qt...
Repository: ktp-contact-list
Description
-------
The long-awaited Dan-sized patch is here :-)
This patch merges the KTp::ContactsModel and RoomsModel (simple channel observer) into a single tree model via ContactsRoomsModel. The model now looks like
|
|- Chat rooms
| |- room1 at conf.kdetalk.net
| |- room2 at conf.kdetalk.net
|- Contacts
|- Group 1
| |- Contact 1
| |- Contact 2
|- Group 2
After a few beers, I was even able to make my model work with David's EmptyRowFilter, so the "Chat rooms" (or "Contacts") top-level nodes will be automatically hidden, when they have no children
The patch is so big, because I refactored the delegates a little, but other than that, it's just the two new models and small changes in context menu and contact overlays to support rooms.
Unfortunately this patch causes ktp-contact-list to crash when switching from "Do not show groups" to "Show contacts by groups". Interestingly, it does not crash when switching the other way around. I'm completely clueless, so if you guys can figure something out, it would me much appreciated. This patch cannot go in until the crash is fixed of course.
Diffs (updated)
-----
contact-list-widget.cpp 3ffa1cc
contact-list-widget_p.h e4a5eb3
contact-overlays.h a998644
contact-overlays.cpp ee14e8f
contacts-rooms-model.h PRE-CREATION
contacts-rooms-model.cpp PRE-CREATION
context-menu.h bec4e55
context-menu.cpp 00795d7
empty-row-filter.cpp 01b2b48
main-widget.cpp cf1b97d
rooms-model.h PRE-CREATION
rooms-model.cpp PRE-CREATION
tooltips/tooltipmanager.cpp 555d425
CMakeLists.txt 1ee112a
abstract-contact-delegate.h 2339833
abstract-contact-delegate.cpp a92cc4e
contact-delegate-compact.h 736d2e5
contact-delegate-compact.cpp c51a210
contact-delegate.h 9f0e5df
contact-delegate.cpp 537e204
contact-list-widget.h 8f39b81
Diff: https://git.reviewboard.kde.org/r/118237/diff/
Testing
-------
Joined a room, room immediately appeared in the CL. Closed text-ui, room remained in CL. Clicked the room in CL, text-ui was started again. Left the room, it disappeared from CL.
File Attachments
----------------
Screenshot
https://git.reviewboard.kde.org/media/uploaded/files/2014/05/21/09b64e1d-7c31-4fc1-a3ff-08996fcd930d__ktp-cl.png
Screenshot with contact groups enabled
https://git.reviewboard.kde.org/media/uploaded/files/2014/05/21/b6bf32cb-3e65-47e3-af15-5859e2dbdda5__ktp-cl.png
Thanks,
Dan Vrátil
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-telepathy/attachments/20140805/41f744a2/attachment.html>
More information about the KDE-Telepathy
mailing list