Commit b9c00ba9 authored by Vlad Zahorodnii's avatar Vlad Zahorodnii
Browse files

Create color manager after workspace

parent 3197c789
......@@ -85,6 +85,7 @@ WaylandTestApplication::~WaylandTestApplication()
}
m_xwayland.reset();
destroyVirtualInputDevices();
destroyColorManager();
destroyWorkspace();
destroyInputMethod();
destroyCompositor();
......@@ -133,7 +134,6 @@ void WaylandTestApplication::performStartup()
std::exit(1);
}
waylandServer()->initPlatform();
createColorManager();
// try creating the Wayland Backend
createInput();
......@@ -167,6 +167,7 @@ void WaylandTestApplication::continueStartupWithScene()
disconnect(Compositor::self(), &Compositor::sceneCreated, this, &WaylandTestApplication::continueStartupWithScene);
createWorkspace();
createColorManager();
createPlugins();
waylandServer()->initWorkspace();
......
......@@ -124,7 +124,6 @@ void Application::start()
Application::~Application()
{
delete options;
destroyColorManager();
destroyAtoms();
destroyPlatform();
m_session.reset();
......
......@@ -126,6 +126,7 @@ ApplicationWayland::~ApplicationWayland()
static_cast<EffectsHandlerImpl *>(effects)->unloadAllEffects();
}
m_xwayland.reset();
destroyColorManager();
destroyWorkspace();
destroyInputMethod();
......@@ -147,7 +148,6 @@ void ApplicationWayland::performStartup()
}
waylandServer()->initPlatform();
createColorManager();
createInput();
createInputMethod();
......@@ -165,6 +165,7 @@ void ApplicationWayland::continueStartupWithScene()
// Note that we start accepting client connections after creating the Workspace.
createWorkspace();
createColorManager();
createPlugins();
if (!waylandServer()->start()) {
......
......@@ -185,6 +185,7 @@ ApplicationX11::~ApplicationX11()
setTerminating();
destroyPlugins();
destroyCompositor();
destroyColorManager();
destroyWorkspace();
// If there was no --replace (no new WM)
if (owner != nullptr && owner->ownerWindow() != XCB_WINDOW_NONE) {
......@@ -202,6 +203,7 @@ void ApplicationX11::lostSelection()
sendPostedEvents();
destroyPlugins();
destroyCompositor();
destroyColorManager();
destroyWorkspace();
// Remove windowmanager privileges
Xcb::selectInput(kwinApp()->x11RootWindow(), XCB_EVENT_MASK_PROPERTY_CHANGE);
......@@ -228,8 +230,6 @@ void ApplicationX11::performStartup()
std::exit(1);
}
createColorManager();
// Check whether another windowmanager is running
const uint32_t maskValues[] = {XCB_EVENT_MASK_SUBSTRUCTURE_REDIRECT};
UniqueCPtr<xcb_generic_error_t> redirectCheck(xcb_request_check(kwinApp()->x11Connection(),
......@@ -246,6 +246,7 @@ void ApplicationX11::performStartup()
createInput();
createWorkspace();
createColorManager();
createPlugins();
Xcb::sync(); // Trigger possible errors, there's still a chance to abort
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment