diff --git a/example/qml/Qt5/example.qml b/example/qml/Qt5/example.qml index 138e1b2..f7b127a 100644 --- a/example/qml/Qt5/example.qml +++ b/example/qml/Qt5/example.qml @@ -105,6 +105,7 @@ RibbonWindow { anchors.fill: parent pageWidth: (page_slider.value / 100.0) * width spacing: 0 + isMainView: true ColumnLayout{ Layout.alignment: Qt.AlignCenter Layout.topMargin: 30 diff --git a/example/qml/Qt6/example.qml b/example/qml/Qt6/example.qml index c7455c3..0eefd92 100644 --- a/example/qml/Qt6/example.qml +++ b/example/qml/Qt6/example.qml @@ -105,6 +105,7 @@ RibbonWindow { anchors.fill: parent pageWidth: (page_slider.value / 100.0) * width spacing: 0 + isMainView: true ColumnLayout{ Layout.alignment: Qt.AlignCenter Layout.topMargin: 30 diff --git a/lib_source/qml/Qt5/RibbonBottomBar.qml b/lib_source/qml/Qt5/RibbonBottomBar.qml index 9281b66..603464d 100644 --- a/lib_source/qml/Qt5/RibbonBottomBar.qml +++ b/lib_source/qml/Qt5/RibbonBottomBar.qml @@ -30,8 +30,10 @@ Item { maskOpacity: bgOpacity useSolidBg: true clip: true - target: Window.window.viewItems - targetRect: Qt.rect(x, Window.window.viewItems.y + Window.window.viewItems.height, width, height) + target: Window.window.viewItems ? Window.window.viewItems : null + targetRect: Window.window.viewItems ? + Qt.rect(x, Window.window.viewItems.y + Window.window.viewItems.height, width, height) : + Qt.rect(0,0,0,0) bottomLeftRadius: Qt.platform.os === 'windows' ? RibbonUI.isWin11 ? 7 : 0 : 10 bottomRightRadius: bottomLeftRadius Behavior on maskColor { diff --git a/lib_source/qml/Qt5/RibbonTabBar.qml b/lib_source/qml/Qt5/RibbonTabBar.qml index e08fcc6..f2aa0a9 100644 --- a/lib_source/qml/Qt5/RibbonTabBar.qml +++ b/lib_source/qml/Qt5/RibbonTabBar.qml @@ -75,7 +75,7 @@ Item{ useSolidBg: true radius: modernStyle ? 10 :0 clip: true - target: Window.window.viewItems ? Window.window.viewItems : undefined + target: Window.window.viewItems ? Window.window.viewItems : null targetRect: Window.window.viewItems ? mapToItem(Window.window.viewItems, blur.x, blur.y, width, height) : Qt.rect(0,0,0,0) Behavior on maskColor { ColorAnimation { diff --git a/lib_source/qml/Qt5/RibbonView.qml b/lib_source/qml/Qt5/RibbonView.qml index c2d8da0..38bc7f7 100644 --- a/lib_source/qml/Qt5/RibbonView.qml +++ b/lib_source/qml/Qt5/RibbonView.qml @@ -11,6 +11,7 @@ Item { property bool modernStyle: RibbonTheme.modernStyle property bool isDarkMode: RibbonTheme.isDarkMode property int spacing: 5 + property bool isMainView: false property alias bgColor: bg.color property alias bgVisible: bg.visible z:-2 @@ -31,7 +32,7 @@ Item { right: parent.right top: parent.top } - height: Window.window.tabBar ? Math.abs(Window.window.tabBar.height - Window.window.tabBar.modernMargin) : 0 + height: isMainView ? Window.window ? Window.window.tabBar ? Math.abs(Window.window.tabBar.height - Window.window.tabBar.modernMargin) : 0 : 0 : 0 } Item{ @@ -59,8 +60,11 @@ Item { right: parent.right bottom: parent.bottom } - height: Window.window.tabBar ? Math.abs(Window.window.bottomBar.height) : 0 + height: isMainView ? Window.window ? Window.window.tabBar ? Math.abs(Window.window.bottomBar.height) : 0 : 0 : 0 } - Component.onCompleted: Window.window.viewItems = container + Component.onCompleted: { + if(isMainView && Window.window) + Window.window.viewItems = container + } } diff --git a/lib_source/qml/Qt6/RibbonBottomBar.qml b/lib_source/qml/Qt6/RibbonBottomBar.qml index a55b31f..b6b7024 100644 --- a/lib_source/qml/Qt6/RibbonBottomBar.qml +++ b/lib_source/qml/Qt6/RibbonBottomBar.qml @@ -30,8 +30,10 @@ Item { maskOpacity: bgOpacity useSolidBg: true clip: true - target: Window.window.viewItems - targetRect: Qt.rect(x, Window.window.viewItems.y + Window.window.viewItems.height, width, height) + target: Window.window.viewItems ? Window.window.viewItems : null + targetRect: Window.window.viewItems ? + Qt.rect(x, Window.window.viewItems.y + Window.window.viewItems.height, width, height) : + Qt.rect(0,0,0,0) bottomLeftRadius: Qt.platform.os === 'windows' ? RibbonUI.isWin11 ? 7 : 0 : 10 bottomRightRadius: bottomLeftRadius Behavior on maskColor { diff --git a/lib_source/qml/Qt6/RibbonTabBar.qml b/lib_source/qml/Qt6/RibbonTabBar.qml index 1746918..e5e0810 100644 --- a/lib_source/qml/Qt6/RibbonTabBar.qml +++ b/lib_source/qml/Qt6/RibbonTabBar.qml @@ -75,7 +75,7 @@ Item{ useSolidBg: true radius: modernStyle ? 10 :0 clip: true - target: Window.window.viewItems ? Window.window.viewItems : undefined + target: Window.window.viewItems ? Window.window.viewItems : null targetRect: Window.window.viewItems ? mapToItem(Window.window.viewItems, blur.x, blur.y, width, height) : Qt.rect(0,0,0,0) Behavior on maskColor { ColorAnimation { diff --git a/lib_source/qml/Qt6/RibbonView.qml b/lib_source/qml/Qt6/RibbonView.qml index 0a28452..c70442a 100644 --- a/lib_source/qml/Qt6/RibbonView.qml +++ b/lib_source/qml/Qt6/RibbonView.qml @@ -11,6 +11,7 @@ Item { property bool modernStyle: RibbonTheme.modernStyle property bool isDarkMode: RibbonTheme.isDarkMode property int spacing: 5 + property bool isMainView: false property alias bgColor: bg.color property alias bgVisible: bg.visible z:-2 @@ -31,7 +32,7 @@ Item { right: parent.right top: parent.top } - height: Window.window.tabBar ? Math.abs(Window.window.tabBar.height - Window.window.tabBar.modernMargin) : 0 + height: isMainView ? Window.window ? Window.window.tabBar ? Math.abs(Window.window.tabBar.height - Window.window.tabBar.modernMargin) : 0 : 0 : 0 } Item{ @@ -59,8 +60,11 @@ Item { right: parent.right bottom: parent.bottom } - height: Window.window.tabBar ? Math.abs(Window.window.bottomBar.height) : 0 + height: isMainView ? Window.window ? Window.window.tabBar ? Math.abs(Window.window.bottomBar.height) : 0 : 0 : 0 } - Component.onCompleted: Window.window.viewItems = container + Component.onCompleted: { + if(isMainView && Window.window) + Window.window.viewItems = container + } }