folder button minor improvements
This commit is contained in:
1 parent
d14ee640c5
commit
be69af925a
1 file changed
+29
-35
@@ -2758,49 +2758,43 @@ import SVGKit
|
|||||||
folder.folded = hidden
|
folder.folded = hidden
|
||||||
folder.setupAtrributedText()
|
folder.setupAtrributedText()
|
||||||
if hidden {
|
if hidden {
|
||||||
folder.forEachWidget{ widget in
|
for sequence in folder.sequenceSet {
|
||||||
guard widget != folder else {return}
|
guard let widget = OnScreenWidgetView.mapping[sequence], widget != exception else {continue}
|
||||||
if folder.sequenceSet.contains(widget.sequence), widget != exception{
|
DispatchQueue.main.async {
|
||||||
DispatchQueue.main.async {
|
widget.isUserInteractionEnabled = false
|
||||||
widget.isUserInteractionEnabled = false
|
let duration = folder.buttonMode == .slideAndHold ? 0.05 : 0.15
|
||||||
let duration = folder.buttonMode == .slideAndHold ? 0.05 : 0.15
|
UIView.animate(withDuration: duration, animations: {
|
||||||
UIView.animate(withDuration: duration, animations: {
|
widget.center = folder.center
|
||||||
widget.center = folder.center
|
},completion: { finished in
|
||||||
},completion: { finished in
|
widget.isUserInteractionEnabled = !folder.folded
|
||||||
widget.isUserInteractionEnabled = !folder.folded
|
widget.center = folder.folded ? folder.storedCenter : widget.storedCenter
|
||||||
widget.center = folder.folded ? folder.storedCenter : widget.storedCenter
|
widget.isHidden = folder.folded
|
||||||
widget.isHidden = folder.folded
|
})
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
folder.forEachWidget{ widget in
|
for sequence in folder.sequenceSet {
|
||||||
guard widget != folder else {return}
|
guard let widget = OnScreenWidgetView.mapping[sequence], widget != exception else {continue}
|
||||||
if folder.sequenceSet.contains(widget.sequence), widget != exception{
|
DispatchQueue.main.async {
|
||||||
DispatchQueue.main.async {
|
widget.center = folder.storedCenter
|
||||||
widget.center = folder.storedCenter
|
widget.isUserInteractionEnabled = false
|
||||||
widget.isUserInteractionEnabled = false
|
widget.isHidden = false
|
||||||
widget.isHidden = false
|
UIView.animate(withDuration: folder.buttonMode == .slideAndHold ? 0.05 : 0.15, animations: {
|
||||||
UIView.animate(withDuration: folder.buttonMode == .slideAndHold ? 0.05 : 0.15, animations: {
|
widget.center = widget.storedCenter
|
||||||
widget.center = widget.storedCenter
|
},completion: { finished in
|
||||||
},completion: { finished in
|
widget.isUserInteractionEnabled = !folder.folded
|
||||||
widget.isUserInteractionEnabled = !folder.folded
|
widget.center = folder.folded ? folder.storedCenter : widget.storedCenter
|
||||||
widget.center = folder.folded ? folder.storedCenter : widget.storedCenter
|
widget.isHidden = folder.folded
|
||||||
widget.isHidden = folder.folded
|
})
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if recursive {
|
if recursive {
|
||||||
folder.forEachWidget{ widget in
|
for sequence in folder.sequenceSet {
|
||||||
guard widget != folder else {return}
|
guard let widget = OnScreenWidgetView.mapping[sequence] else {continue}
|
||||||
guard widget.isFolder, widget != exception else {return}
|
guard widget.isFolder, widget != exception else {continue}
|
||||||
if folder.sequenceSet.contains(widget.sequence){
|
OnScreenWidgetView.setCollection(hidden: hidden, for: widget, exception: exception, recursive: true)
|
||||||
OnScreenWidgetView.setCollection(hidden: hidden, for: widget, exception: exception, recursive: true)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user