[Kde-pim] Review Request 119787: ETM: Keep track of collectionfetchjobs and only emit collectionTreeFetched once all are done.

Christian Mollekopf chrigi_1 at fastmail.fm
Thu Aug 14 12:54:56 BST 2014


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

Review request for KDEPIM-Libraries.


Repository: kdepimlibs


Description
-------

ETM: Keep track of collectionfetchjobs and only emit collectionTreeFetched once all are done.

Because we need at least two fetch jobs when monitoring collectoins (base + recursive),
the signal was emitted to early, resulting in test continuing before the model
was fully populated. Additionally this allowed to remove another extra
codepath.

ETM: Whenever we insert a new collection we need to populate it.


ETM: Fixed inserts.

The previous code seems bogus. It's always one toplevel parent anyways as it seems.
I introduced the previous code myself in 0dc0c06d74915.

CollectionSync: Keep a hash of the names as well.

During the initial sync we hit this fallback codepath on every collection,
and it comes to a grinding halt with a couple of thousand collections.
With the hash it remains performant and the memory overhead seems relatively small.

ResourceBase: Sync referenced collections.


CollectionComboBox: Set listfilter


CollectionSync: Detect enabled changes.


Collection: Always the changelog to changed when set.

Otherwise setEnabled(true) will still not result in the value getting
updated (since the default value is true as well).

ETM: Removed unnecessary debug output


Diffs
-----

  akonadi/collection.cpp 153e4bcf0806f7ae3864890dc01692c7a1376803 
  akonadi/collectioncombobox.cpp 800d5e6113f09d33494bc0f1eb07a7e23e634386 
  akonadi/collectionsync.cpp c9afbfb0a1f25238f3a41d9218d75b47120367c8 
  akonadi/entitytreemodel.h a58668e0de7789b6cdcef7ef27243140d2eaad88 
  akonadi/entitytreemodel_p.h ba989352989f879e92d644640546a3d259c11212 
  akonadi/entitytreemodel_p.cpp 8d24973494b78726bdeb4f01990aeab139c4d745 
  akonadi/resourcebase.cpp 9dbc1878b5e161e4ac9c8939ea65ff77f139815a 
  akonadi/tests/entitytreemodeltest.cpp fc6e3be1c471248cdb7c7865b2186373cc53c6fe 

Diff: https://git.reviewboard.kde.org/r/119787/diff/


Testing
-------


Thanks,

Christian Mollekopf

_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/



More information about the kde-pim mailing list