Merge lp:~dobey/libubuntuone/less-synchronicity into lp:libubuntuone

Proposed by dobey
Status: Merged
Approved by: dobey
Approved revision: 136
Merged at revision: 136
Proposed branch: lp:~dobey/libubuntuone/less-synchronicity
Merge into: lp:libubuntuone
Diff against target: 73 lines (+30/-19)
1 file modified
libubuntuone/u1-music-store.c (+30/-19)
To merge this branch: bzr merge lp:~dobey/libubuntuone/less-synchronicity
Reviewer Review Type Date Requested Status
Diego Sarmentero (community) Approve
Review via email: mp+74813@code.launchpad.net

Commit message

Move some of the init code into a timeout, to help speed up startup

To post a comment you must log in.
Revision history for this message
Diego Sarmentero (diegosarmentero) wrote :

+1

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'libubuntuone/u1-music-store.c'
2--- libubuntuone/u1-music-store.c 2011-04-15 18:13:28 +0000
3+++ libubuntuone/u1-music-store.c 2011-09-09 15:18:23 +0000
4@@ -1221,6 +1221,34 @@
5 music_store);
6 }
7
8+static gboolean
9+_u1_music_store_delayed_init (gpointer user_data)
10+{
11+ U1MusicStore *music_store = U1_MUSIC_STORE (user_data);
12+ SyncdaemonFolderInfo *folder_info;
13+
14+ /* Figure out if the Purchased Music folder is subscribed */
15+ folder_info = syncdaemon_daemon_get_folder_info (music_store->priv->syncdaemon, u1_music_store_get_library_location (music_store));
16+ music_store->priv->folder_subscribed = syncdaemon_folder_info_get_subscribed (folder_info);
17+
18+ /* Create a hidden progress bar */
19+ music_store->priv->progress = gtk_progress_bar_new ();
20+
21+ g_signal_connect (G_OBJECT (music_store->priv->web_viewer), "notify",
22+ G_CALLBACK (viewer_property_changed_cb), music_store);
23+
24+ /* And load the real store in the background */
25+ music_store->priv->idle_cb = g_idle_add ((GSourceFunc) load_real_store_cb, music_store);
26+
27+ gtk_box_pack_start (GTK_BOX (music_store), music_store->priv->alertbar, FALSE, FALSE, 6);
28+ gtk_box_pack_start (GTK_BOX (music_store), music_store->priv->scroll, TRUE, TRUE, 0);
29+ gtk_box_pack_end (GTK_BOX (music_store), music_store->priv->progress, FALSE, FALSE, 0);
30+
31+ _u1_music_store_rescan_purchased_folder (music_store);
32+
33+ return FALSE;
34+}
35+
36 static void
37 u1_music_store_init (U1MusicStore *music_store)
38 {
39@@ -1228,7 +1256,6 @@
40 const gchar *url_to_use;
41 SoupSession *session;
42 GtkWidget *alert_icon;
43- SyncdaemonFolderInfo *folder_info;
44
45 if (!g_thread_get_initialized ())
46 g_thread_init (NULL);
47@@ -1343,24 +1370,8 @@
48 g_signal_connect (G_OBJECT (music_store->priv->subscribe_btn), "clicked",
49 G_CALLBACK (subscribe_purchased_folder), music_store);
50
51- /* Figure out if the Purchased Music folder is subscribed */
52- folder_info = syncdaemon_daemon_get_folder_info (music_store->priv->syncdaemon, u1_music_store_get_library_location (music_store));
53- music_store->priv->folder_subscribed = syncdaemon_folder_info_get_subscribed (folder_info);
54-
55- /* Create a hidden progress bar */
56- music_store->priv->progress = gtk_progress_bar_new ();
57-
58- g_signal_connect (G_OBJECT (music_store->priv->web_viewer), "notify",
59- G_CALLBACK (viewer_property_changed_cb), music_store);
60-
61- /* And load the real store in the background */
62- music_store->priv->idle_cb = g_idle_add ((GSourceFunc) load_real_store_cb, music_store);
63-
64- gtk_box_pack_start (GTK_BOX (music_store), music_store->priv->alertbar, FALSE, FALSE, 6);
65- gtk_box_pack_start (GTK_BOX (music_store), music_store->priv->scroll, TRUE, TRUE, 0);
66- gtk_box_pack_end (GTK_BOX (music_store), music_store->priv->progress, FALSE, FALSE, 0);
67-
68- _u1_music_store_rescan_purchased_folder (music_store);
69+ g_timeout_add_seconds(10, (GSourceFunc) _u1_music_store_delayed_init,
70+ music_store);
71 }
72
73 /**

Subscribers

People subscribed via source and target branches