diff --git a/src/Widgets/WindowClone.vala b/src/Widgets/WindowClone.vala index 998f95d30..9cc2c7711 100644 --- a/src/Widgets/WindowClone.vala +++ b/src/Widgets/WindowClone.vala @@ -186,10 +186,10 @@ public class Gala.WindowClone : Clutter.Actor { private void load_clone (bool was_waiting = false) { var actor = (Meta.WindowActor) window.get_compositor_private (); if (actor == null) { - Idle.add (() => { - if (window.get_compositor_private () != null) - load_clone (true); - return Source.REMOVE; + ulong shown_handler = 0; + shown_handler = window.shown.connect (() => { + load_clone (true); + window.disconnect (shown_handler); }); return;