Changeset View
Changeset View
Standalone View
Standalone View
composite.cpp
Show First 20 Lines • Show All 608 Lines • ▼ Show 20 Line(s) | 600 | { | |||
---|---|---|---|---|---|
609 | // If outputs are disabled, we return to the event loop and | 609 | // If outputs are disabled, we return to the event loop and | ||
610 | // continue processing events until the outputs are enabled again | 610 | // continue processing events until the outputs are enabled again | ||
611 | if (!kwinApp()->platform()->areOutputsEnabled()) { | 611 | if (!kwinApp()->platform()->areOutputsEnabled()) { | ||
612 | compositeTimer.stop(); | 612 | compositeTimer.stop(); | ||
613 | return; | 613 | return; | ||
614 | } | 614 | } | ||
615 | 615 | | |||
616 | // Create a list of all windows in the stacking order | 616 | // Create a list of all windows in the stacking order | ||
617 | ToplevelList windows = Workspace::self()->xStackingOrder(); | 617 | QList<Toplevel *> windows = Workspace::self()->xStackingOrder(); | ||
618 | ToplevelList damaged; | 618 | QList<Toplevel *> damaged; | ||
619 | 619 | | |||
620 | // Reset the damage state of each window and fetch the damage region | 620 | // Reset the damage state of each window and fetch the damage region | ||
621 | // without waiting for a reply | 621 | // without waiting for a reply | ||
622 | for (Toplevel *win : windows) { | 622 | for (Toplevel *win : windows) { | ||
623 | if (win->resetAndFetchDamage()) { | 623 | if (win->resetAndFetchDamage()) { | ||
624 | damaged << win; | 624 | damaged << win; | ||
625 | } | 625 | } | ||
626 | } | 626 | } | ||
▲ Show 20 Lines • Show All 336 Lines • ▼ Show 20 Line(s) | 962 | QMetaObject::invokeMethod(this, [this]() { | |||
963 | suspend(BlockRuleSuspend); | 963 | suspend(BlockRuleSuspend); | ||
964 | }, Qt::QueuedConnection); | 964 | }, Qt::QueuedConnection); | ||
965 | } | 965 | } | ||
966 | } | 966 | } | ||
967 | else if (m_suspended & BlockRuleSuspend) { | 967 | else if (m_suspended & BlockRuleSuspend) { | ||
968 | // If !c we just check if we can resume in case a blocking client was lost. | 968 | // If !c we just check if we can resume in case a blocking client was lost. | ||
969 | bool shouldResume = true; | 969 | bool shouldResume = true; | ||
970 | 970 | | |||
971 | for (ClientList::ConstIterator it = Workspace::self()->clientList().constBegin(); | 971 | for (auto it = Workspace::self()->clientList().constBegin(); | ||
972 | it != Workspace::self()->clientList().constEnd(); ++it) { | 972 | it != Workspace::self()->clientList().constEnd(); ++it) { | ||
973 | if ((*it)->isBlockingCompositing()) { | 973 | if ((*it)->isBlockingCompositing()) { | ||
974 | shouldResume = false; | 974 | shouldResume = false; | ||
975 | break; | 975 | break; | ||
976 | } | 976 | } | ||
977 | } | 977 | } | ||
978 | if (shouldResume) { | 978 | if (shouldResume) { | ||
979 | // Do NOT attempt to call suspend(false) from within the eventchain! | 979 | // Do NOT attempt to call suspend(false) from within the eventchain! | ||
Show All 16 Lines |