From bdbe25895fefbbcf7a940d98695b56999cd1ae9e Mon Sep 17 00:00:00 2001
From: Sine Striker <trueful@163.com>
Date: 摹曛, 07 12月 2023 17:05:12 +0800
Subject: [PATCH] Add override context factories

---
 src/widgets/widgetwindowagent.cpp |    5 +++++
 src/widgets/CMakeLists.txt        |    1 +
 src/quick/CMakeLists.txt          |    1 +
 src/quick/quickwindowagent_p.h    |    2 ++
 src/widgets/widgetwindowagent_p.h |    2 ++
 src/quick/quickwindowagent.cpp    |    9 +++++++--
 6 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/src/quick/CMakeLists.txt b/src/quick/CMakeLists.txt
index 7381738..5d00ff2 100644
--- a/src/quick/CMakeLists.txt
+++ b/src/quick/CMakeLists.txt
@@ -19,6 +19,7 @@
     LINKS QWKCore
     QT_LINKS Core Gui Quick
     QT_INCLUDE_PRIVATE Core Gui Quick
+    INCLUDE_PRIVATE contexts
     PREFIX QWK_QUICK
 )
 
diff --git a/src/quick/quickwindowagent.cpp b/src/quick/quickwindowagent.cpp
index 80c10e3..be70ca6 100644
--- a/src/quick/quickwindowagent.cpp
+++ b/src/quick/quickwindowagent.cpp
@@ -1,9 +1,10 @@
 #include "quickwindowagent.h"
 #include "quickwindowagent_p.h"
 
-#include "quickitemdelegate_p.h"
-
 #include <QtQuick/QQuickWindow>
+
+#include "quickitemdelegate_p.h"
+#include "quickwindowcontext_p.h"
 
 namespace QWK {
 
@@ -16,6 +17,10 @@
     void QuickWindowAgentPrivate::init() {
     }
 
+    AbstractWindowContext *QuickWindowAgentPrivate::createContext() const {
+        return new QuickWindowContext();
+    }
+
     QuickWindowAgent::QuickWindowAgent(QObject *parent)
         : QuickWindowAgent(*new QuickWindowAgentPrivate(), parent) {
     }
diff --git a/src/quick/quickwindowagent_p.h b/src/quick/quickwindowagent_p.h
index 9043c5c..d1e7eb4 100644
--- a/src/quick/quickwindowagent_p.h
+++ b/src/quick/quickwindowagent_p.h
@@ -14,6 +14,8 @@
 
         void init();
 
+        AbstractWindowContext * createContext() const override;
+
         // Host
         QQuickWindow *hostWindow{};
     };
diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt
index f74a6b0..91119c8 100644
--- a/src/widgets/CMakeLists.txt
+++ b/src/widgets/CMakeLists.txt
@@ -19,6 +19,7 @@
     LINKS QWKCore
     QT_LINKS Core Gui Widgets
     QT_INCLUDE_PRIVATE Core Gui Widgets
+    INCLUDE_PRIVATE contexts
     PREFIX QWK_WIDGETS
 )
 
diff --git a/src/widgets/widgetwindowagent.cpp b/src/widgets/widgetwindowagent.cpp
index e7068fb..b183951 100644
--- a/src/widgets/widgetwindowagent.cpp
+++ b/src/widgets/widgetwindowagent.cpp
@@ -2,6 +2,7 @@
 #include "widgetwindowagent_p.h"
 
 #include "widgetitemdelegate_p.h"
+#include "widgetwindowcontext_p.h"
 
 namespace QWK {
 
@@ -14,6 +15,10 @@
     void WidgetWindowAgentPrivate::init() {
     }
 
+    AbstractWindowContext *WidgetWindowAgentPrivate::createContext() const {
+        return new WidgetWindowContext();
+    }
+
     WidgetWindowAgent::WidgetWindowAgent(QObject *parent)
         : WidgetWindowAgent(*new WidgetWindowAgentPrivate(), parent) {
     }
diff --git a/src/widgets/widgetwindowagent_p.h b/src/widgets/widgetwindowagent_p.h
index 225f567..3a4e682 100644
--- a/src/widgets/widgetwindowagent_p.h
+++ b/src/widgets/widgetwindowagent_p.h
@@ -14,6 +14,8 @@
 
         void init();
 
+        AbstractWindowContext * createContext() const override;
+
         // Host
         QWidget *hostWidget{};
     };

--
Gitblit v1.9.1