From 3ff570b585ee97c2ff8e6e59881e671aa0dcecf4 Mon Sep 17 00:00:00 2001 From: Mentalflow <312902918@qq.com> Date: Fri, 21 Jul 2023 13:44:20 +0800 Subject: [PATCH] Update to Qt 6 branch and bug fixed. --- example/example.qrc | 1 + example/qml/component/CustomWindow.qml | 10 ++++++++++ example/qml/page/T_Http.qml | 16 ++++++++-------- example/src/main.cpp | 1 + src/FluHttp.h | 1 - src/FluHttpInterceptor.h | 1 - src/fluentuiplugin.cpp | 16 +++++++++++++++- 7 files changed, 35 insertions(+), 11 deletions(-) diff --git a/example/example.qrc b/example/example.qrc index 79c717b7..e04da6c3 100644 --- a/example/example.qrc +++ b/example/example.qrc @@ -174,5 +174,6 @@ qml/page/T_Pagination.qml qml/page/T_RadioButton.qml qml/page/T_RemoteLoader.qml + qml/page/T_Http.qml diff --git a/example/qml/component/CustomWindow.qml b/example/qml/component/CustomWindow.qml index de893ccc..66f35b7b 100644 --- a/example/qml/component/CustomWindow.qml +++ b/example/qml/component/CustomWindow.qml @@ -51,6 +51,16 @@ FluWindow { } } + Connections{ + target: FluTheme + function onDarkChanged(){ + if (FluTheme.dark) + FramelessUtils.systemTheme = FramelessHelperConstants.Dark + else + FramelessUtils.systemTheme = FramelessHelperConstants.Light + } + } + function setHitTestVisible(com){ framless_helper.setHitTestVisible(com) } diff --git a/example/qml/page/T_Http.qml b/example/qml/page/T_Http.qml index c2a9cd03..6e9313d6 100644 --- a/example/qml/page/T_Http.qml +++ b/example/qml/page/T_Http.qml @@ -1,10 +1,10 @@ -import QtQuick -import QtCore -import QtQuick.Layouts -import QtQuick.Window -import QtQuick.Controls -import QtQuick.Dialogs -import FluentUI +import QtQuick 2.15 +import Qt.labs.platform 1.0 +import QtQuick.Layouts 1.15 +import QtQuick.Window 2.15 +import QtQuick.Controls 2.15 +import QtQuick.Dialogs 1.3 +import FluentUI 1.0 import "qrc:///example/qml/component" FluScrollablePage{ @@ -112,7 +112,7 @@ FluScrollablePage{ id: file_dialog currentFolder: StandardPaths.standardLocations(StandardPaths.DownloadLocation)[0] onAccepted: { - var path = selectedFolder.toString().replace("file:///","") + "/big_buck_bunny.mp4" + var path = currentFolder.toString().replace(FluTools.isMacos() ? "file://" : "file:///","") + "/big_buck_bunny.mp4" http_download.download(path) } } diff --git a/example/src/main.cpp b/example/src/main.cpp index d33dd5a3..f977a3f1 100644 --- a/example/src/main.cpp +++ b/example/src/main.cpp @@ -32,6 +32,7 @@ int main(int argc, char *argv[]) FramelessConfig::instance()->set(Global::Option::EnableBlurBehindWindow,false); #ifdef Q_OS_MACOS FramelessConfig::instance()->set(Global::Option::ForceNonNativeBackgroundBlur,false); + FramelessConfig::instance()->set(Global::Option::EnableBlurBehindWindow,true); #endif AppInfo* appInfo = new AppInfo(); QQmlApplicationEngine engine; diff --git a/src/FluHttp.h b/src/FluHttp.h index c28a80f1..f653b551 100644 --- a/src/FluHttp.h +++ b/src/FluHttp.h @@ -11,7 +11,6 @@ class FluHttp : public QObject Q_OBJECT Q_PROPERTY_AUTO(QString,url); Q_PROPERTY_AUTO(bool,enabledBreakpointDownload) - QML_NAMED_ELEMENT(FluHttp) private: QVariant invokeIntercept(const QVariant& params,const QVariant& headers,const QString& method); public: diff --git a/src/FluHttpInterceptor.h b/src/FluHttpInterceptor.h index dcef4b60..28c7cc0d 100644 --- a/src/FluHttpInterceptor.h +++ b/src/FluHttpInterceptor.h @@ -7,7 +7,6 @@ class FluHttpInterceptor : public QObject { Q_OBJECT - QML_NAMED_ELEMENT(FluHttpInterceptor) public: explicit FluHttpInterceptor(QObject *parent = nullptr); diff --git a/src/fluentuiplugin.cpp b/src/fluentuiplugin.cpp index d6a91487..cbd9f93e 100644 --- a/src/fluentuiplugin.cpp +++ b/src/fluentuiplugin.cpp @@ -9,6 +9,9 @@ #include "FluTheme.h" #include "FluTools.h" #include "FluTextStyle.h" +#include "FluHttp.h" +#include "FluHttpInterceptor.h" + int major = 1; int minor = 0; static FluentUIPlugin instance; @@ -24,8 +27,19 @@ void FluentUIPlugin::registerTypes(const char *uri) { qmlRegisterType(uri,major,minor,"WindowHelper"); qmlRegisterType(uri,major,minor,"FluColorSet"); + qmlRegisterType(uri,major,minor,"FluHttpInterceptor"); + qmlRegisterType(uri,major,minor,"FluHttp"); qmlRegisterUncreatableMetaObject(Fluent_Awesome::staticMetaObject, uri,major,minor,"FluentIcons", "Access to enums & flags only"); - qmlRegisterUncreatableMetaObject(Fluent_DarkMode::staticMetaObject, uri,major,minor,"FluDarkMode", "Access to enums & flags only"); + qmlRegisterUncreatableMetaObject(FluThemeType::staticMetaObject, uri,major,minor,"FluThemeType", "Access to enums & flags only"); + qmlRegisterUncreatableMetaObject(FluPageType::staticMetaObject, uri,major,minor,"FluPageType", "Access to enums & flags only"); + qmlRegisterUncreatableMetaObject(FluWindowType::staticMetaObject, uri,major,minor,"FluWindowType", "Access to enums & flags only"); + qmlRegisterUncreatableMetaObject(FluTreeViewType::staticMetaObject, uri,major,minor,"FluTreeViewType", "Access to enums & flags only"); + qmlRegisterUncreatableMetaObject(FluStatusViewType::staticMetaObject, uri,major,minor,"FluStatusViewType", "Access to enums & flags only"); + qmlRegisterUncreatableMetaObject(FluContentDialogType::staticMetaObject, uri,major,minor,"FluContentDialogType", "Access to enums & flags only"); + qmlRegisterUncreatableMetaObject(FluTimePickerType::staticMetaObject, uri,major,minor,"FluTimePickerType", "Access to enums & flags only"); + qmlRegisterUncreatableMetaObject(FluCalendarViewType::staticMetaObject, uri,major,minor,"FluCalendarViewType", "Access to enums & flags only"); + qmlRegisterUncreatableMetaObject(FluTabViewType::staticMetaObject, uri,major,minor,"FluTabViewType", "Access to enums & flags only"); + qmlRegisterUncreatableMetaObject(FluNavigationViewType::staticMetaObject, uri,major,minor,"FluNavigationViewType", "Access to enums & flags only"); } #ifdef FLUENTUI_BUILD_STATIC_LIB