Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAjay Garg <ajay@activitycentral.com>2012-03-03 04:44:46 (GMT)
committer Anish Mangal <anish@activitycentral.com>2012-04-27 10:02:37 (GMT)
commit9585d3ae1627e8cddbe5b95db9a616f9654dd7fa (patch)
tree10729045aa3f82bf634a3db3b1e8dfe78535f797
parent860a0fd8d76f049dd0a13f6ac3dea6b8bb7416a0 (diff)
Check if a activity is already present in activities-list, before (re-)adding it.
-rw-r--r--src/jarabe/desktop/activitieslist.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/jarabe/desktop/activitieslist.py b/src/jarabe/desktop/activitieslist.py
index 5f79090..c48a5dc 100644
--- a/src/jarabe/desktop/activitieslist.py
+++ b/src/jarabe/desktop/activitieslist.py
@@ -204,6 +204,15 @@ class ListModel(gtk.TreeModelSort):
self._model.remove(row.iter)
return
+ def _is_activity_bundle_in_model_already(self, activity_info):
+ bundle_id = activity_info.get_bundle_id()
+ version = activity_info.get_activity_version()
+ for row in self._model:
+ if row[ListModel.COLUMN_BUNDLE_ID] == bundle_id and \
+ row[ListModel.COLUMN_VERSION] == version:
+ return True
+ return False
+
def _add_activity(self, activity_info):
if activity_info.get_bundle_id() == 'org.laptop.JournalActivity':
return
@@ -212,6 +221,12 @@ class ListModel(gtk.TreeModelSort):
version = activity_info.get_activity_version()
registry = bundleregistry.get_registry()
+
+ # If the activity bundle is already a part of
+ # activities-list, do not re-add it.
+ if self._is_activity_bundle_in_model_already(activity_info):
+ return
+
favorite = registry.is_bundle_favorite(activity_info.get_bundle_id(),
version)