mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-01-31 08:52:49 -05:00
potential topbar loading fix
This commit is contained in:
@@ -362,19 +362,26 @@ PanelWindow {
|
|||||||
Repeater {
|
Repeater {
|
||||||
model: SettingsData.topBarLeftWidgetsModel
|
model: SettingsData.topBarLeftWidgetsModel
|
||||||
|
|
||||||
Loader {
|
Item {
|
||||||
property string widgetId: model.widgetId
|
property string widgetId: model.widgetId
|
||||||
property var widgetData: model
|
property var widgetData: model
|
||||||
property int spacerSize: model.size || 20
|
property int spacerSize: model.size || 20
|
||||||
|
|
||||||
anchors.verticalCenter: parent ? parent.verticalCenter : undefined
|
anchors.verticalCenter: parent ? parent.verticalCenter : undefined
|
||||||
active: topBarContent.getWidgetVisible(model.widgetId)
|
width: loader.width
|
||||||
sourceComponent: topBarContent.getWidgetComponent(model.widgetId)
|
height: loader.height
|
||||||
opacity: topBarContent.getWidgetEnabled(model.enabled) ? 1 : 0
|
|
||||||
|
Loader {
|
||||||
|
id: loader
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
active: topBarContent.getWidgetVisible(parent.widgetId)
|
||||||
|
sourceComponent: topBarContent.getWidgetComponent(parent.widgetId)
|
||||||
|
opacity: topBarContent.getWidgetEnabled(parent.widgetData.enabled !== undefined ? parent.widgetData.enabled : true) ? 1 : 0
|
||||||
asynchronous: true
|
asynchronous: true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
id: centerSection
|
id: centerSection
|
||||||
@@ -396,10 +403,10 @@ PanelWindow {
|
|||||||
totalWidth = 0
|
totalWidth = 0
|
||||||
for (var i = 0; i < centerRepeater.count; i++) {
|
for (var i = 0; i < centerRepeater.count; i++) {
|
||||||
let item = centerRepeater.itemAt(i)
|
let item = centerRepeater.itemAt(i)
|
||||||
if (item && item.active && item.item) {
|
if (item && item.loader && item.loader.active && item.loader.item) {
|
||||||
centerWidgets.push(item.item)
|
centerWidgets.push(item.loader.item)
|
||||||
totalWidgets++
|
totalWidgets++
|
||||||
totalWidth += item.item.width
|
totalWidth += item.loader.item.width
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (totalWidgets > 1)
|
if (totalWidgets > 1)
|
||||||
@@ -483,23 +490,30 @@ PanelWindow {
|
|||||||
|
|
||||||
model: SettingsData.topBarCenterWidgetsModel
|
model: SettingsData.topBarCenterWidgetsModel
|
||||||
|
|
||||||
Loader {
|
Item {
|
||||||
property string widgetId: model.widgetId
|
property string widgetId: model.widgetId
|
||||||
property var widgetData: model
|
property var widgetData: model
|
||||||
property int spacerSize: model.size || 20
|
property int spacerSize: model.size || 20
|
||||||
|
property alias loader: loader
|
||||||
|
|
||||||
anchors.verticalCenter: parent ? parent.verticalCenter : undefined
|
anchors.verticalCenter: parent ? parent.verticalCenter : undefined
|
||||||
active: topBarContent.getWidgetVisible(model.widgetId)
|
width: loader.width
|
||||||
sourceComponent: topBarContent.getWidgetComponent(model.widgetId)
|
height: loader.height
|
||||||
opacity: topBarContent.getWidgetEnabled(model.enabled) ? 1 : 0
|
|
||||||
|
Loader {
|
||||||
|
id: loader
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
active: topBarContent.getWidgetVisible(parent.widgetId)
|
||||||
|
sourceComponent: topBarContent.getWidgetComponent(parent.widgetId)
|
||||||
|
opacity: topBarContent.getWidgetEnabled(parent.widgetData.enabled !== undefined ? parent.widgetData.enabled : true) ? 1 : 0
|
||||||
asynchronous: true
|
asynchronous: true
|
||||||
|
|
||||||
onLoaded: {
|
onLoaded: {
|
||||||
if (item) {
|
if (item) {
|
||||||
item.onWidthChanged.connect(centerSection.updateLayout)
|
item.onWidthChanged.connect(centerSection.updateLayout)
|
||||||
if (model.widgetId === "spacer")
|
if (parent.widgetId === "spacer")
|
||||||
item.spacerSize = Qt.binding(() => {
|
item.spacerSize = Qt.binding(() => {
|
||||||
return model.size || 20
|
return parent.spacerSize
|
||||||
})
|
})
|
||||||
Qt.callLater(centerSection.updateLayout)
|
Qt.callLater(centerSection.updateLayout)
|
||||||
}
|
}
|
||||||
@@ -509,6 +523,7 @@ PanelWindow {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Connections {
|
Connections {
|
||||||
function onCountChanged() {
|
function onCountChanged() {
|
||||||
@@ -530,19 +545,26 @@ PanelWindow {
|
|||||||
Repeater {
|
Repeater {
|
||||||
model: SettingsData.topBarRightWidgetsModel
|
model: SettingsData.topBarRightWidgetsModel
|
||||||
|
|
||||||
Loader {
|
Item {
|
||||||
property string widgetId: model.widgetId
|
property string widgetId: model.widgetId
|
||||||
property var widgetData: model
|
property var widgetData: model
|
||||||
property int spacerSize: model.size || 20
|
property int spacerSize: model.size || 20
|
||||||
|
|
||||||
anchors.verticalCenter: parent ? parent.verticalCenter : undefined
|
anchors.verticalCenter: parent ? parent.verticalCenter : undefined
|
||||||
active: topBarContent.getWidgetVisible(model.widgetId)
|
width: loader.width
|
||||||
sourceComponent: topBarContent.getWidgetComponent(model.widgetId)
|
height: loader.height
|
||||||
opacity: topBarContent.getWidgetEnabled(model.enabled) ? 1 : 0
|
|
||||||
|
Loader {
|
||||||
|
id: loader
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
active: topBarContent.getWidgetVisible(parent.widgetId)
|
||||||
|
sourceComponent: topBarContent.getWidgetComponent(parent.widgetId)
|
||||||
|
opacity: topBarContent.getWidgetEnabled(parent.widgetData.enabled !== undefined ? parent.widgetData.enabled : true) ? 1 : 0
|
||||||
asynchronous: true
|
asynchronous: true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Component {
|
Component {
|
||||||
|
|||||||
Reference in New Issue
Block a user