mirror of
https://github.com/Ranchero-Software/NetNewsWire.git
synced 2025-01-11 17:24:04 +01:00
fixes button state on account help view
This commit is contained in:
parent
f7574dc633
commit
015ee0a8e0
@ -14,33 +14,24 @@ struct AddAccountHelpView: View {
|
|||||||
let accountTypes: [AccountType] = AddAccountSections.allOrdered.sectionContent
|
let accountTypes: [AccountType] = AddAccountSections.allOrdered.sectionContent
|
||||||
var delegate: AccountsPreferencesAddAccountDelegate?
|
var delegate: AccountsPreferencesAddAccountDelegate?
|
||||||
var helpText: String
|
var helpText: String
|
||||||
@State private var hoveringId: String? = nil
|
|
||||||
@State private var iCloudUnavailableError: Bool = false
|
@State private var iCloudUnavailableError: Bool = false
|
||||||
|
|
||||||
var body: some View {
|
var body: some View {
|
||||||
VStack {
|
VStack {
|
||||||
HStack {
|
HStack {
|
||||||
ForEach(accountTypes, id: \.self) { account in
|
ForEach(accountTypes, id: \.self) { account in
|
||||||
account.image()
|
Button(action: {
|
||||||
.resizable()
|
if account == .cloudKit && AccountManager.shared.accounts.contains(where: { $0.type == .cloudKit }) {
|
||||||
.frame(width: 20, height: 20, alignment: .center)
|
iCloudUnavailableError = true
|
||||||
.onTapGesture {
|
} else {
|
||||||
if account == .cloudKit && AccountManager.shared.accounts.contains(where: { $0.type == .cloudKit }) {
|
delegate?.presentSheetForAccount(account)
|
||||||
iCloudUnavailableError = true
|
|
||||||
} else {
|
|
||||||
delegate?.presentSheetForAccount(account)
|
|
||||||
}
|
|
||||||
hoveringId = nil
|
|
||||||
}
|
}
|
||||||
.onHover(perform: { hovering in
|
}, label: {
|
||||||
if hovering {
|
account.image()
|
||||||
hoveringId = account.localizedAccountName()
|
.resizable()
|
||||||
} else {
|
.frame(width: 20, height: 20, alignment: .center)
|
||||||
hoveringId = nil
|
})
|
||||||
}
|
.buttonStyle(PlainButtonStyle())
|
||||||
})
|
|
||||||
.scaleEffect(hoveringId == account.localizedAccountName() ? 1.2 : 1)
|
|
||||||
.shadow(radius: hoveringId == account.localizedAccountName() ? 0.8 : 0)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user