Create X11Compositor in main_x11.cpp
This makes X11Compositor initialization similar to the initialization of the wayland compositor.
This commit is contained in:
parent
dba29ece4b
commit
f633bd1ff4
2 changed files with 4 additions and 8 deletions
|
@ -13,6 +13,7 @@
|
|||
#include <config-kwin.h>
|
||||
|
||||
#include "backends/x11/standalone/x11_standalone_backend.h"
|
||||
#include "compositor_x11.h"
|
||||
#include "core/outputbackend.h"
|
||||
#include "core/session.h"
|
||||
#include "cursor.h"
|
||||
|
@ -181,9 +182,9 @@ ApplicationX11::~ApplicationX11()
|
|||
{
|
||||
setTerminating();
|
||||
destroyPlugins();
|
||||
destroyCompositor();
|
||||
destroyColorManager();
|
||||
destroyWorkspace();
|
||||
destroyCompositor();
|
||||
// If there was no --replace (no new WM)
|
||||
if (owner != nullptr && owner->ownerWindow() != XCB_WINDOW_NONE) {
|
||||
Xcb::setInputFocus(XCB_INPUT_FOCUS_POINTER_ROOT);
|
||||
|
@ -238,9 +239,9 @@ void ApplicationX11::lostSelection()
|
|||
{
|
||||
sendPostedEvents();
|
||||
destroyPlugins();
|
||||
destroyCompositor();
|
||||
destroyColorManager();
|
||||
destroyWorkspace();
|
||||
destroyCompositor();
|
||||
// Remove windowmanager privileges
|
||||
Xcb::selectInput(kwinApp()->x11RootWindow(), XCB_EVENT_MASK_PROPERTY_CHANGE);
|
||||
removeNativeX11EventFilter();
|
||||
|
@ -291,6 +292,7 @@ void ApplicationX11::performStartup()
|
|||
});
|
||||
|
||||
createInput();
|
||||
X11Compositor::create(this);
|
||||
createWorkspace();
|
||||
createColorManager();
|
||||
createPlugins();
|
||||
|
|
|
@ -20,7 +20,6 @@
|
|||
#endif
|
||||
#include "appmenu.h"
|
||||
#include "atoms.h"
|
||||
#include "compositor_x11.h"
|
||||
#include "core/outputbackend.h"
|
||||
#include "core/outputconfiguration.h"
|
||||
#include "cursor.h"
|
||||
|
@ -164,11 +163,6 @@ Workspace::Workspace()
|
|||
m_tabbox = std::make_unique<TabBox::TabBox>();
|
||||
#endif
|
||||
|
||||
if (!Compositor::self()) {
|
||||
Q_ASSERT(kwinApp()->operationMode() == Application::OperationMode::OperationModeX11);
|
||||
X11Compositor::create(this);
|
||||
}
|
||||
|
||||
m_decorationBridge = std::make_unique<Decoration::DecorationBridge>();
|
||||
m_decorationBridge->init();
|
||||
connect(this, &Workspace::configChanged, m_decorationBridge.get(), &Decoration::DecorationBridge::reconfigure);
|
||||
|
|
Loading…
Reference in a new issue