Changeset View
Changeset View
Standalone View
Standalone View
composite.cpp
Show First 20 Lines • Show All 380 Lines • ▼ Show 20 Line(s) | 370 | { | |||
---|---|---|---|---|---|
381 | 381 | | |||
382 | if (Workspace::self()) { | 382 | if (Workspace::self()) { | ||
383 | foreach (Client * c, Workspace::self()->clientList()) | 383 | foreach (Client * c, Workspace::self()->clientList()) | ||
384 | m_scene->windowClosed(c, NULL); | 384 | m_scene->windowClosed(c, NULL); | ||
385 | foreach (Client * c, Workspace::self()->desktopList()) | 385 | foreach (Client * c, Workspace::self()->desktopList()) | ||
386 | m_scene->windowClosed(c, NULL); | 386 | m_scene->windowClosed(c, NULL); | ||
387 | foreach (Unmanaged * c, Workspace::self()->unmanagedList()) | 387 | foreach (Unmanaged * c, Workspace::self()->unmanagedList()) | ||
388 | m_scene->windowClosed(c, NULL); | 388 | m_scene->windowClosed(c, NULL); | ||
389 | foreach (Deleted * c, Workspace::self()->deletedList()) | | |||
390 | m_scene->windowDeleted(c); | | |||
graesslin: why remove these? | |||||
If a Deleted is discarded, it will be removed from the scene as well, so we don't need these lines. zzag: If a Deleted is discarded, it will be removed from the scene as well, so we don't need these… | |||||
391 | foreach (Client * c, Workspace::self()->clientList()) | 389 | foreach (Client * c, Workspace::self()->clientList()) | ||
392 | c->finishCompositing(); | 390 | c->finishCompositing(); | ||
393 | foreach (Client * c, Workspace::self()->desktopList()) | 391 | foreach (Client * c, Workspace::self()->desktopList()) | ||
394 | c->finishCompositing(); | 392 | c->finishCompositing(); | ||
395 | foreach (Unmanaged * c, Workspace::self()->unmanagedList()) | 393 | foreach (Unmanaged * c, Workspace::self()->unmanagedList()) | ||
396 | c->finishCompositing(); | 394 | c->finishCompositing(); | ||
397 | foreach (Deleted * c, Workspace::self()->deletedList()) | | |||
398 | c->finishCompositing(); | | |||
399 | if (auto c = kwinApp()->x11Connection()) { | 395 | if (auto c = kwinApp()->x11Connection()) { | ||
400 | xcb_composite_unredirect_subwindows(c, kwinApp()->x11RootWindow(), XCB_COMPOSITE_REDIRECT_MANUAL); | 396 | xcb_composite_unredirect_subwindows(c, kwinApp()->x11RootWindow(), XCB_COMPOSITE_REDIRECT_MANUAL); | ||
401 | } | 397 | } | ||
398 | while (!workspace()->deletedList().isEmpty()) { | ||||
399 | workspace()->deletedList().first()->discard(); | ||||
400 | } | ||||
402 | } | 401 | } | ||
403 | if (waylandServer()) { | 402 | if (waylandServer()) { | ||
404 | foreach (ShellClient *c, waylandServer()->clients()) { | 403 | foreach (ShellClient *c, waylandServer()->clients()) { | ||
405 | m_scene->windowClosed(c, nullptr); | 404 | m_scene->windowClosed(c, nullptr); | ||
406 | } | 405 | } | ||
407 | foreach (ShellClient *c, waylandServer()->internalClients()) { | 406 | foreach (ShellClient *c, waylandServer()->internalClients()) { | ||
408 | m_scene->windowClosed(c, nullptr); | 407 | m_scene->windowClosed(c, nullptr); | ||
409 | } | 408 | } | ||
Show All 13 Lines | 421 | for (ClientList::ConstIterator it = Workspace::self()->clientList().constBegin(); | |||
423 | it != Workspace::self()->clientList().constEnd(); | 422 | it != Workspace::self()->clientList().constEnd(); | ||
424 | ++it) { | 423 | ++it) { | ||
425 | // forward all opacity values to the frame in case there'll be other CM running | 424 | // forward all opacity values to the frame in case there'll be other CM running | ||
426 | if ((*it)->opacity() != 1.0) { | 425 | if ((*it)->opacity() != 1.0) { | ||
427 | NETWinInfo i(connection(), (*it)->frameId(), rootWindow(), 0, 0); | 426 | NETWinInfo i(connection(), (*it)->frameId(), rootWindow(), 0, 0); | ||
428 | i.setOpacity(static_cast< unsigned long >((*it)->opacity() * 0xffffffff)); | 427 | i.setOpacity(static_cast< unsigned long >((*it)->opacity() * 0xffffffff)); | ||
429 | } | 428 | } | ||
430 | } | 429 | } | ||
431 | // discard all Deleted windows (#152914) | | |||
432 | while (!Workspace::self()->deletedList().isEmpty()) | | |||
433 | Workspace::self()->deletedList().first()->discard(); | | |||
434 | } | 430 | } | ||
435 | m_finishing = false; | 431 | m_finishing = false; | ||
436 | emit compositingToggled(false); | 432 | emit compositingToggled(false); | ||
437 | } | 433 | } | ||
438 | 434 | | |||
439 | void Compositor::releaseCompositorSelection() | 435 | void Compositor::releaseCompositorSelection() | ||
440 | { | 436 | { | ||
441 | if (hasScene() && !m_finishing) { | 437 | if (hasScene() && !m_finishing) { | ||
▲ Show 20 Lines • Show All 774 Lines • Show Last 20 Lines |
why remove these?