Преглед на файлове

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());