diff src/cagou/core/profile_manager.py @ 63:af4f986d86f0

core: pb bridge implementation: - media_dir is now gotten directly from config - replaced sync bridge calls by async ones - pb is now the bridge used in sat.conf for Android
author Goffi <goffi@goffi.org>
date Tue, 13 Dec 2016 23:10:41 +0100
parents 1922506846be
children 7f7f3b8eb154
line wrap: on
line diff
--- a/src/cagou/core/profile_manager.py	Sun Dec 04 21:34:30 2016 +0100
+++ b/src/cagou/core/profile_manager.py	Tue Dec 13 23:10:41 2016 +0100
@@ -132,10 +132,8 @@
 
     def __init__(self, pm):
         self.pm = pm
-        profiles = G.host.bridge.getProfilesList()
-        profiles.sort()
         self.list_adapter = ProfileListAdapter(pm,
-                                               data=profiles,
+                                               data=[],
                                                cls=ProfileItem,
                                                args_converter=self.converter,
                                                selection_mode='multiple',
@@ -145,6 +143,11 @@
         self.layout.add_widget(listview.ListView(adapter=self.list_adapter))
         connect_btn = ConnectButton(self)
         self.layout.add_widget(connect_btn)
+        self.reload()
+
+    def _getProfilesListCb(self, profiles):
+        profiles.sort()
+        self.list_adapter.data = profiles
 
     def converter(self, row_idx, obj):
         return {'text': obj,
@@ -153,9 +156,7 @@
 
     def reload(self):
         """Reload profiles list"""
-        profiles = G.host.bridge.getProfilesList()
-        profiles.sort()
-        self.list_adapter.data = profiles
+        G.host.bridge.getProfilesList(callback=self._getProfilesListCb)
 
 
 class ProfileManager(QuickProfileManager, BoxLayout):