diff --git a/src/core/rootwrapper.cpp b/src/core/rootwrapper.cpp index 76b3d3c..b394af5 100644 --- a/src/core/rootwrapper.cpp +++ b/src/core/rootwrapper.cpp @@ -8,9 +8,11 @@ #include #include #include +#include #include #include +#include "../window/floatingwindow.hpp" #include "generation.hpp" #include "qmlglobal.hpp" #include "scan.hpp" @@ -73,6 +75,15 @@ void RootWrapper::reloadGraph(bool hard) { return; } + if (auto* item = qobject_cast(newRoot)) { + auto* window = new FloatingWindowInterface(); + item->setParent(window); + item->setParentItem(window->contentItem()); + window->setWidth(static_cast(item->width())); + window->setHeight(static_cast(item->height())); + newRoot = window; + } + generation->root = newRoot; component.completeCreate(); diff --git a/src/core/shell.hpp b/src/core/shell.hpp index 807f027..66b6ef6 100644 --- a/src/core/shell.hpp +++ b/src/core/shell.hpp @@ -8,7 +8,7 @@ #include "qmlglobal.hpp" #include "reload.hpp" -///! Root config element +///! Optional root config element, allowing some settings to be specified inline. class ShellRoot: public ReloadPropagator { Q_OBJECT; Q_PROPERTY(QuickshellSettings* settings READ settings CONSTANT);