()
| 1461 | } |
| 1462 | |
| 1463 | startAnimate() { |
| 1464 | if (!this._isAnimating) { |
| 1465 | // Tracking the background fixes issue #80 |
| 1466 | // It also let us activate window clones clicked during animation |
| 1467 | // Untracked in moveDone |
| 1468 | Main.layoutManager.trackChrome(this.background); |
| 1469 | } |
| 1470 | |
| 1471 | this.visible.forEach(w => { |
| 1472 | let actor = w.get_compositor_private(); |
| 1473 | if (!actor) |
| 1474 | return; |
| 1475 | actor.remove_clip(); |
| 1476 | if (inGrab && inGrab.window === w) |
| 1477 | return; |
| 1478 | animateWindow(w); |
| 1479 | }); |
| 1480 | |
| 1481 | this._floating.forEach(w => { |
| 1482 | let f = w.get_frame_rect(); |
| 1483 | if (!animateWindow(w)) |
| 1484 | return; |
| 1485 | w.clone.x = f.x - this.monitor.x; |
| 1486 | w.clone.y = f.y - this.monitor.y; |
| 1487 | }); |
| 1488 | |
| 1489 | this._isAnimating = true; |
| 1490 | } |
| 1491 | |
| 1492 | fixOverlays(metaWindow) { |
| 1493 | metaWindow = metaWindow || this.selectedWindow; |
no test coverage detected