X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=StatusIcon.vala;h=64199105d1f39596354e6e65a5de5c91c5b25bb4;hb=cea2d405d2f6721672a913c4b3f24180ec1d1516;hp=74ef17452f5b0487693998c25e206168b96354e2;hpb=29f3680dfec748badf7dadc983f5d4cb38e4383b;p=gitlive diff --git a/StatusIcon.vala b/StatusIcon.vala index 74ef1745..64199105 100644 --- a/StatusIcon.vala +++ b/StatusIcon.vala @@ -39,7 +39,8 @@ public class StatusIconA : StatusIcon { public bool paused = false; public static StatusIconA statusicon; - + + public StatusIconA() { statusicon = this; @@ -56,7 +57,7 @@ public class StatusIconA : StatusIcon { menu.ref(); this.button_press_event.connect( ( ev ) =>{ print("button press event called\n"); - + menu.show_all(); if (this.paused) { @@ -82,7 +83,7 @@ public class StatusIconA : StatusIcon { }); this.popup_menu.connect( ( button, time) =>{ //this.button_press_event.connect( ( ) =>{ - + //print(Array.prototype.slice.call(arguments).join(',')); print("menu activiate called\n"); //var menu = this.get('menu'); @@ -303,7 +304,7 @@ public class StatusIconA : StatusIcon { this.total = tr.length; this.has_error = 0; - + this.pull_all_error_message = ""; for (var i= 0; i< tr.length;i++) { statusicon.set_from_stock( i%2 == 0 ? Gtk.Stock.FULLSCREEN : Gtk.Stock.LEAVE_FULLSCREEN ); @@ -326,15 +327,17 @@ public class StatusIconA : StatusIcon { } uint total = 0; - unit has_error = 0; + uint has_error = 0; + string pull_all_error_message = ""; void pullAllCallback(GitRepo repo, int err, string res) { this.total--; if (err > 0) { - - + this.has_error = 1; + this.pull_all_error_message += this.pull_all_error_message.length > 0 ? "\n" : ""; + this.pull_all_error_message += "Error Pulling " + repo.name +"\n" + res; } if (!Regex.match_simple ("Already up-to-date", res) ) { @@ -350,6 +353,10 @@ public class StatusIconA : StatusIcon { } if (this.total < 1) { + if (this.has_error > 0) { + GitMonitor.gitmonitor.pauseError(this.pull_all_error_message); + return; + } statusicon.set_tooltip_text("Gitlive"); @@ -397,7 +404,7 @@ public class StatusIconA : StatusIcon { this.accel_group = null; this.activate.connect( () => { - //var ret = imports.Clones.Clones.show(); + Clones.singleton().show(); }); }