src/Builder4/MainWindow.bjs
authorAlan Knowles <alan@roojs.com>
Mon, 18 May 2015 09:43:32 +0000 (17:43 +0800)
committerAlan Knowles <alan@roojs.com>
Mon, 18 May 2015 09:43:32 +0000 (17:43 +0800)
src/Builder4/MainWindow.vala

src/Builder4/MainWindow.bjs
src/Builder4/MainWindow.vala

index 92392c0..4024222 100644 (file)
           },
           {
            "listeners" : {
-            "button_press_event" : "() => {\n    if (this.popup == null) {\n        this.popup = new Xcls_ValaCompileErrors();\n        this.popup.window = _this;\n    }\n    if (this.popup.active) {\n        this.popup.active = false;\n        this.popup.el.hide();\n        return true;\n    }\n    this.popup.show(this.notices, this.el);\n    return true;\n}"
+            "button_press_event" : "() => {\n    if (this.popup == null) {\n        this.popup = new Xcls_ValaCompileErrors();\n        this.popup.window = _this;\n    }\n    \n    if (_this.statusbar_errors.popup != null && _this.statusbar_errors.popup.active) {\n        _this.statusbar_errors.popup.active = false;\n        _this.statusbar_errors.popup.el.hide();\n    }\n    if (_this.statusbar_depricated.popup != null && _this.statusbar_depricated.popup.active) {\n        _this.statusbar_depricated.popup.active = false;\n        _this.statusbar_depricated.popup.el.hide();\n    }\n    \n    if (this.popup.active) {\n        this.popup.active = false;\n        this.popup.el.hide();\n        return true;\n    }\n    this.popup.show(this.notices, this.el);\n    return true;\n}"
            },
            "bool always_show_image" : true,
            "id" : "statusbar_warnings",
index fbf0af9..437037a 100644 (file)
@@ -2391,6 +2391,16 @@ public class Xcls_MainWindow : Object
                     this.popup = new Xcls_ValaCompileErrors();
                     this.popup.window = _this;
                 }
+                
+                if (_this.statusbar_errors.popup != null && _this.statusbar_errors.popup.active) {
+                    _this.statusbar_errors.popup.active = false;
+                    _this.statusbar_errors.popup.el.hide();
+                }
+                if (_this.statusbar_depricated.popup != null && _this.statusbar_depricated.popup.active) {
+                    _this.statusbar_depricated.popup.active = false;
+                    _this.statusbar_depricated.popup.el.hide();
+                }
+                
                 if (this.popup.active) {
                     this.popup.active = false;
                     this.popup.el.hide();