From 17d5978fe48f8843c35e1d0a0ac01fecbb7e9096 Mon Sep 17 00:00:00 2001 From: Pascal Precht Date: Tue, 13 Jul 2021 17:05:31 +0200 Subject: [PATCH] feat(StatusFlatRoundButton): introduce `highlighted` color for secondary type Closes #245 --- ui/StatusQ/sandbox/DemoApp.qml | 3 +++ .../StatusQ/Controls/StatusFlatRoundButton.qml | 15 +++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/ui/StatusQ/sandbox/DemoApp.qml b/ui/StatusQ/sandbox/DemoApp.qml index c8d843288b..1973fa5174 100644 --- a/ui/StatusQ/sandbox/DemoApp.qml +++ b/ui/StatusQ/sandbox/DemoApp.qml @@ -450,6 +450,9 @@ Rectangle { chatInfoButton.subTitle: "Community Chat" chatInfoButton.icon.color: Theme.palette.miscColor6 chatInfoButton.type: StatusChatInfoButton.Type.CommunityChat + + searchButton.onClicked: searchButton.highlighted = !searchButton.highlighted + membersButton.onClicked: membersButton.highlighted = !membersButton.highlighted } } } diff --git a/ui/StatusQ/src/StatusQ/Controls/StatusFlatRoundButton.qml b/ui/StatusQ/src/StatusQ/Controls/StatusFlatRoundButton.qml index 4e0056af0e..792d4593ac 100644 --- a/ui/StatusQ/src/StatusQ/Controls/StatusFlatRoundButton.qml +++ b/ui/StatusQ/src/StatusQ/Controls/StatusFlatRoundButton.qml @@ -78,6 +78,15 @@ Rectangle { return "transparent"; } } + + property color highlightedColor: { + switch(statusFlatRoundButton.type) { + case StatusFlatRoundButton.Type.Primary: + return Theme.palette.primaryColor3; + case StatusFlatRoundButton.Type.Secondary: + return Theme.palette.baseColor4; + } + } } implicitWidth: 44 @@ -86,8 +95,10 @@ Rectangle { color: { if (statusFlatRoundButton.enabled) { - return sensor.containsMouse || highlighted ? backgroundSettings.hoverColor - : backgroundSettings.color + if (sensor.containsMouse) { + return backgroundSettings.hoverColor + } + return highlighted ? backgroundSettings.highlightedColor : backgroundSettings.color } else { return backgroundSettings.disabledColor }