diff options
Diffstat (limited to 'src/quickcontrols/fusion/impl')
5 files changed, 21 insertions, 8 deletions
diff --git a/src/quickcontrols/fusion/impl/CMakeLists.txt b/src/quickcontrols/fusion/impl/CMakeLists.txt index e52f1ecc06..64ee4851fb 100644 --- a/src/quickcontrols/fusion/impl/CMakeLists.txt +++ b/src/quickcontrols/fusion/impl/CMakeLists.txt @@ -14,7 +14,7 @@ set(qml_files "SwitchIndicator.qml" ) -qt_internal_add_qml_module(qtquickcontrols2fusionstyleimplplugin +qt_internal_add_qml_module(QuickControls2FusionStyleImpl URI "QtQuick.Controls.Fusion.impl" VERSION "${PROJECT_VERSION}" PAST_MAJOR_VERSIONS 2 @@ -22,7 +22,6 @@ qt_internal_add_qml_module(qtquickcontrols2fusionstyleimplplugin DEPENDENCIES QtQuick/auto PLUGIN_TARGET qtquickcontrols2fusionstyleimplplugin - NO_PLUGIN_OPTIONAL SOURCES qquickfusionbusyindicator.cpp qquickfusionbusyindicator_p.h qquickfusiondial.cpp qquickfusiondial_p.h diff --git a/src/quickcontrols/fusion/impl/CheckIndicator.qml b/src/quickcontrols/fusion/impl/CheckIndicator.qml index 58de99654a..40e3471f10 100644 --- a/src/quickcontrols/fusion/impl/CheckIndicator.qml +++ b/src/quickcontrols/fusion/impl/CheckIndicator.qml @@ -10,13 +10,15 @@ Rectangle { id: indicator property Item control + property real baseLightness: 1.6 + readonly property color pressedColor: Fusion.mergedColors(control.palette.base, control.palette.windowText, 85) readonly property color checkMarkColor: Qt.darker(control.palette.text, 1.2) implicitWidth: 14 implicitHeight: 14 - color: control.down ? indicator.pressedColor : control.palette.base + color: control.down ? indicator.pressedColor : Qt.lighter(control.palette.base, baseLightness) border.color: control.visualFocus ? Fusion.highlightedOutline(control.palette) : Qt.lighter(Fusion.outline(control.palette), 1.1) diff --git a/src/quickcontrols/fusion/impl/RadioIndicator.qml b/src/quickcontrols/fusion/impl/RadioIndicator.qml index 0949b904a9..818b246953 100644 --- a/src/quickcontrols/fusion/impl/RadioIndicator.qml +++ b/src/quickcontrols/fusion/impl/RadioIndicator.qml @@ -17,7 +17,7 @@ Rectangle { implicitHeight: 14 radius: width / 2 - color: control.down ? indicator.pressedColor : control.palette.base + color: control.down ? indicator.pressedColor : Qt.lighter(control.palette.base, 1.75) border.color: control.visualFocus ? Fusion.highlightedOutline(control.palette) : Qt.darker(control.palette.window, 1.5) diff --git a/src/quickcontrols/fusion/impl/SwitchIndicator.qml b/src/quickcontrols/fusion/impl/SwitchIndicator.qml index 8bc9238228..39e47c0e91 100644 --- a/src/quickcontrols/fusion/impl/SwitchIndicator.qml +++ b/src/quickcontrols/fusion/impl/SwitchIndicator.qml @@ -2,6 +2,7 @@ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only import QtQuick +import QtQuick.Window import QtQuick.Templates as T import QtQuick.Controls.impl import QtQuick.Controls.Fusion @@ -49,11 +50,13 @@ Rectangle { gradient: Gradient { GradientStop { position: 0 - color: Fusion.highlight(indicator.control.palette) + color: Qt.alpha(indicator.control.palette.active.highlight, + indicator.Window ? indicator.Window.active ? 1 : 0.5 : 1) } GradientStop { position: 1 - color: Qt.lighter(Fusion.highlight(indicator.control.palette), 1.2) + color: Qt.alpha(Qt.lighter(indicator.control.palette.active.highlight, 1.2), + indicator.Window ? indicator.Window.active ? 1 : 0.5 : 1) } } } diff --git a/src/quickcontrols/fusion/impl/qquickfusionbusyindicator.cpp b/src/quickcontrols/fusion/impl/qquickfusionbusyindicator.cpp index cce69b0e4b..8e58b09ed3 100644 --- a/src/quickcontrols/fusion/impl/qquickfusionbusyindicator.cpp +++ b/src/quickcontrols/fusion/impl/qquickfusionbusyindicator.cpp @@ -71,8 +71,17 @@ void QQuickFusionBusyIndicator::itemChange(ItemChange change, const ItemChangeDa { QQuickPaintedItem::itemChange(change, data); - if (change == ItemOpacityHasChanged && qFuzzyIsNull(data.realValue)) - setVisible(false); + switch (change) { + case ItemOpacityHasChanged: + if (qFuzzyIsNull(data.realValue)) + setVisible(false); + break; + case ItemVisibleHasChanged: + update(); + break; + default: + break; + } } QT_END_NAMESPACE |