[Kde-pim] Review Request 109825: Display KNotification and KStatusNotifier for Facebook notifications

Kevin Krammer krammer at kde.org
Mon Apr 8 17:15:28 BST 2013



> On April 5, 2013, 4:48 p.m., Kevin Krammer wrote:
> > resources/facebook/facebookresource_notifications.cpp, line 291
> > <http://git.reviewboard.kde.org/r/109825/diff/2/?file=131464#file131464line291>
> >
> >     is this something you haven't gotten around to do yet or something you are not sure how to do it?
> 
> Martin Klapetek wrote:
>     Not sure how to do it - get a collection if I know only the remote id. Suggestions?
> 
> Kevin Krammer wrote:
>     A resource can address its own collections and items just by specifying the remoteId, So just use a CollectionFetchJob with a collection object that has proper remoteId
> 
> Martin Klapetek wrote:
>     Nice, will give it a try
> 
> Martin Klapetek wrote:
>     So this
>     
>         Collection notifications;
>         notifications.setRemoteId(QLatin1String("notifications"));
>         CollectionFetchJob *collectionJob = new CollectionFetchJob(notifications, CollectionFetchJob::FirstLevel, this);
>         connect(collectionJob, SIGNAL(collectionsReceived(Akonadi::Collection::List)),
>                 this, SLOT(notificationCollectionFetched(Akonadi::Collection::List)));
>     
>     should just work right? It seems to never reach the slot :/

Always also connect to the result signal, so you get notfied when an error occured.
I had a quick look at the facebook resource code and the collection with remoteId notificationsRID doesn't have any children, so collectionsReceived() will not be emitted even if the job succeeds.
Do you want to get the collection itself? If yes, CollectionFetchJob::Base is the type you are looking for :)


- Kevin


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/109825/#review30479
-----------------------------------------------------------


On April 5, 2013, 4:01 p.m., Martin Klapetek wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/109825/
> -----------------------------------------------------------
> 
> (Updated April 5, 2013, 4:01 p.m.)
> 
> 
> Review request for KDEPIM and Plasma.
> 
> 
> Description
> -------
> 
> This patch displays a KNotification whenever an unread notification exists on Facebook. This KNotification groups at most 3 notifications into one popup and then say "...and N more" if there is more. It also keeps track of which notifications were already displayed and does not display them again unless they were updated on the server. This is all stored in a separate config file. 
> 
> Then it creates a KSNI for the notifications where it always show the newest three notifications in the tooltip (regardless if it was displayed before or not) and creates a menu with the notifications, which opens browser with the notification link.
> 
> 
> Diffs
> -----
> 
>   resources/facebook/CMakeLists.txt e8c6381 
>   resources/facebook/facebookresource.h 4a16c0c 
>   resources/facebook/facebookresource.cpp 67e8f3b 
>   resources/facebook/facebookresource_notifications.cpp 7f6b8c4 
>   resources/facebook/serializer/akonadi_serializer_socialnotification.cpp a261e14 
>   resources/facebook/settingsbase.kcfg 9f8e4b5 
>   resources/facebook/settingsdialog.cpp bfb7826 
>   resources/facebook/settingsdialog.ui 68b6a24 
> 
> Diff: http://git.reviewboard.kde.org/r/109825/diff/
> 
> 
> Testing
> -------
> 
> Yes.
> 
> 
> File Attachments
> ----------------
> 
> KSNI
>   http://git.reviewboard.kde.org/media/uploaded/files/2013/04/02/facebook_notifications.png
> 
> 
> Thanks,
> 
> Martin Klapetek
> 
>

_______________________________________________
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