[dconf-editor] Better.



commit 596b1fe7d0a0098ecd12041aad053ec453496bd2
Author: Arnaud Bonatti <arnaud bonatti gmail com>
Date:   Mon Dec 11 08:48:29 2017 +0100

    Better.

 editor/key-list-box-row.vala |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)
---
diff --git a/editor/key-list-box-row.vala b/editor/key-list-box-row.vala
index 7d56aaa..e1e00e6 100644
--- a/editor/key-list-box-row.vala
+++ b/editor/key-list-box-row.vala
@@ -72,7 +72,7 @@ private abstract class ClickableListBoxRow : EventBox
     public signal void on_delete_call ();
 
     public signal void on_popover_disappear ();
-    public ulong on_popover_disappear_handler = 0;
+    public ulong on_popover_disappear_handler = 0;  // used by registry-search
 
     public abstract string get_text ();
 
@@ -108,7 +108,6 @@ private abstract class ClickableListBoxRow : EventBox
     {
         if (nullable_popover != null)       // check sometimes not useful
             ((!) nullable_popover).destroy ();
-        on_popover_disappear ();
     }
 
     public void hide_right_click_popover ()
@@ -134,8 +133,12 @@ private abstract class ClickableListBoxRow : EventBox
                 return;
             }
 
-            ((!) nullable_popover).closed.connect (() => on_popover_disappear ());
-            ((!) nullable_popover).destroy.connect (() => nullable_popover = null);
+            ulong popover_closed_handler = ((!) nullable_popover).closed.connect (() => on_popover_disappear 
());
+            ((!) nullable_popover).destroy.connect ((widget) => {
+                    widget.disconnect (popover_closed_handler);
+                    on_popover_disappear ();
+                    nullable_popover = null;
+                });
 
             ((!) nullable_popover).set_relative_to (this);
             ((!) nullable_popover).position = PositionType.BOTTOM;     // TODO better


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]