fix: use height over implicitHeight for ButtonBase

Also non internal and non required colours so other modules can use it
This commit is contained in:
2 * r + 2 * t 2026-06-07 02:34:43 +10:00
parent 3987ce47b5
commit c36a2ade54

View file

@ -1,5 +1,3 @@
//@ pragma Internal
import QtQuick import QtQuick
import Caelestia.Config import Caelestia.Config
import qs.components import qs.components
@ -35,10 +33,10 @@ StyledRect {
readonly property alias stateLayer: stateLayer readonly property alias stateLayer: stateLayer
readonly property alias radiusAnim: radiusAnim readonly property alias radiusAnim: radiusAnim
required property color activeColour property color activeColour
required property color inactiveColour property color inactiveColour
required property color activeOnColour property color activeOnColour
required property color inactiveOnColour property color inactiveOnColour
property color disabledColour: Qt.alpha(Colours.palette.m3onSurface, 0.1) property color disabledColour: Qt.alpha(Colours.palette.m3onSurface, 0.1)
property color disabledOnColour: Qt.alpha(Colours.palette.m3onSurface, 0.38) property color disabledOnColour: Qt.alpha(Colours.palette.m3onSurface, 0.38)
@ -60,7 +58,7 @@ StyledRect {
if (internalChecked) if (internalChecked)
return checkedRadius; return checkedRadius;
if (isRound) if (isRound)
return implicitHeight / 2 * Math.min(1, Tokens.rounding.scale); return (height || implicitHeight) / 2 * Math.min(1, Tokens.rounding.scale);
return defaultRadius; return defaultRadius;
} }
color: type === ButtonBase.Text ? "transparent" : disabled ? disabledColour : internalChecked ? activeColour : inactiveColour color: type === ButtonBase.Text ? "transparent" : disabled ? disabledColour : internalChecked ? activeColour : inactiveColour