Review Request 118237: Show chat rooms in contact list

Dan Vrátil dvratil at redhat.com
Tue Aug 5 11:38:40 UTC 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/118237/
-----------------------------------------------------------

(Updated Aug. 5, 2014, 1:38 p.m.)


Review request for Telepathy.


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
-----

  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 
  contact-overlays.h a998644 
  contact-overlays.cpp ee14e8f 
  contact-list-widget_p.h e4a5eb3 
  contact-delegate.cpp 537e204 
  contact-list-widget.h 8f39b81 
  contact-list-widget.cpp 3ffa1cc 
  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 
  contacts-rooms-model.h PRE-CREATION 
  contacts-rooms-model.cpp PRE-CREATION 
  context-menu.h bec4e55 

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/8eda3ed4/attachment-0001.html>


More information about the KDE-Telepathy mailing list