this.activate.connect( () => {
GitMonitor.gitmonitor.stop();
var tr = GitRepo.list();
+
+
+
+
+
for (var i= 0; i< tr.length;i++) {
statusicon.set_from_stock(
i%2 == 0 ? Gtk.Stock.FULLSCREEN : Gtk.Stock.LEAVE_FULLSCREEN );
});
}
-
+ void pullAll()
+ {
+ var tr = GitRepo.list();
+
+
+
+ var total = tr.length;
+
+ for (var i= 0; i< tr.length;i++) {
+ statusicon.set_from_stock(
+ i%2 == 0 ? Gtk.Stock.FULLSCREEN : Gtk.Stock.LEAVE_FULLSCREEN );
+
+ var repo = tr.index(i);
+ //if (!repo.autocommit()) {
+ //??? should we ignore ones not on autocommit..
+ // continue;
+ //}
+ //try {
+ statusicon.set_tooltip_text("pull: " + repo.name);
+ var str = "";
+ repo.pull_async((out result) {
+ total--;
+ str += str.length > 0 ? "\n" : "";
+ str += res;
+ if (total < 1) {
+
+ }
+ });
+ // do not care if it's already in sycn..
+ if (Regex.match_simple ("Already up-to-date", str) ) {
+ continue;
+ }
+ var notification = new Notify.Notification(
+ "Updated " + repo.name,
+ str,
+ "dialog-information"
+
+ );
+
+ notification.set_timeout(20);
+ notification.show();
+
+ //} catch(Error e) {
+ // print("notification or push errror- probably to many in queue..");
+ // statusicon.set_from_stock( Gtk.Stock.MEDIA_RECORD );
+ // print(e.message);
+
+ // }
+
+ }
+ statusicon.set_tooltip_text("Gitlive");
+
+
+
+ }
+
}