Sine Striker
2023-12-17 5e12d4d4f27e4ce27a8c9e6145bc6e45840e00f2
src/core/windowagentbase.cpp
@@ -1,10 +1,14 @@
#include "windowagentbase.h"
#include "windowagentbase_p.h"
#include <QWKCore/qwkconfig.h>
#include "qwkglobal_p.h"
#ifdef Q_OS_WINDOWS
#if defined(Q_OS_WINDOWS) && !QWINDOWKIT_CONFIG(FORCE_QT_WINDOW_CONTEXT)
#  include "win32windowcontext_p.h"
#elif defined(Q_OS_MAC) && !QWINDOWKIT_CONFIG(FORCE_QT_WINDOW_CONTEXT)
#  include "cocoawindowcontext_p.h"
#else
#  include "qtwindowcontext_p.h"
#endif
@@ -12,6 +16,9 @@
Q_LOGGING_CATEGORY(qWindowKitLog, "qwindowkit")
namespace QWK {
    WindowAgentBasePrivate::WindowContextFactoryMethod
        WindowAgentBasePrivate::windowContextFactoryMethod = nullptr;
    WindowAgentBasePrivate::WindowAgentBasePrivate() : q_ptr(nullptr), context(nullptr) {
    }
@@ -22,15 +29,18 @@
    }
    AbstractWindowContext *WindowAgentBasePrivate::createContext() const {
        return
#ifdef Q_OS_WINDOWS
            new Win32WindowContext()
#else
            new QtWindowContext()
#endif
                ;
    }
        if (windowContextFactoryMethod) {
            return windowContextFactoryMethod();
        }
#if defined(Q_OS_WINDOWS) && !QWINDOWKIT_CONFIG(FORCE_QT_WINDOW_CONTEXT)
        return new Win32WindowContext();
#elif defined(Q_OS_MAC) && !QWINDOWKIT_CONFIG(FORCE_QT_WINDOW_CONTEXT)
        return new CocoaWindowContext();
#else
        return new QtWindowContext();
#endif
    }
    bool WindowAgentBasePrivate::setup(QObject *host, WindowItemDelegate *delegate) {
        std::unique_ptr<AbstractWindowContext> ctx(createContext());