瀏覽代碼

Handle tray icon being reparented out

Thomas Dy 8 年之前
父節點
當前提交
b7a56fefa6
共有 1 個文件被更改,包括 6 次插入0 次删除
  1. 6 0
      src/tray.rs

+ 6 - 0
src/tray.rs

@@ -211,6 +211,12 @@ impl<'a> Tray<'a> {
                 let window = data[2];
                 self.adopt(window);
             },
+            xcb::REPARENT_NOTIFY => {
+                let event: &xcb::ReparentNotifyEvent = xcb::cast_event(&event);
+                if event.parent() != self.window {
+                    self.forget(event.window());
+                }
+            },
             xcb::DESTROY_NOTIFY => {
                 let event: &xcb::DestroyNotifyEvent = xcb::cast_event(&event);
                 self.forget(event.window());