Comments (19)
I didn't have time to fully dive into it and I needed an update fast, so I fixed it using the ugliest code possible. I knew it was calling some methods over and over, probably a layoutIfNeeded() that automatically called something that then again called layoutIfNeeded(). So I just needed some booleans to only call these one time.
I finally found 3 places where I needed to intervene. Here are the classes and the methods that got it working again for me.
FYI, obviously this is not a correct fix and I will not submit a pull request for this. But this might help someone who is trying to fix it in a good way :)
First class: AdjustedHitBoxColorControl
private var adjustedHitBoxControlAlreadySet = false
public var contentBounds: CGRect {
#warning("Fix 1")
if !adjustedHitBoxControlAlreadySet {
adjustedHitBoxControlAlreadySet = true
layoutIfNeeded()
}
return contentView.frame
}
Second class: ColorPaletteControl
private var colorPaletteControlAlreadySet = false
open override var bounds: CGRect {
didSet {
if !colorPaletteControlAlreadySet {
#warning("Fix 2")
colorPaletteControlAlreadySet = true
updatePaletteImagesAndThumb(isInteractive: false)
}
}
}
Third class: ColorSliderControl
private var colorSliderControlAlreadySet = false
open override var bounds: CGRect {
didSet {
#warning("Fix 3")
if !colorSliderControlAlreadySet {
colorSliderControlAlreadySet = true
updateCornerRadius()
updateThumbAndGradient(isInteractive: false)
}
}
}
from flexcolorpicker.
This should be fixed in 1.4.4
from flexcolorpicker.
Hmm, interesting. Do you have more info about the crash? What is the exception, stack trace, etc.? I will definitely look at this and fix the bug.
from flexcolorpicker.
Hi RastislavMirek,
Thanks for your quick response and really good to hear you'll fix this! When I look at the stack trace, and based on how long it takes to crash, it seems like it's stuck in some loop. Here's the stack, of which I'm only copying about 10%:
Thread 1 Queue : com.apple.main-thread (serial) #0 0x00000001f14d4f9c in ___chkstk_darwin () #1 0x000000019a9b23cc in -[NSISEngine _flushPendingRemovals] () #2 0x000000019a9b9a08 in -[NSISEngine optimize] () #3 0x000000019a9b213c in -[NSISEngine performPendingChangeNotifications] () #4 0x00000001847a856c in -[UIView(Hierarchy) layoutBelowIfNeeded] () #5 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #6 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #7 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #8 0x000000010559ea8c in ColorSliderControl.bounds.setter () #9 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #10 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #11 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #12 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #13 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #14 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #15 0x000000010559ea8c in ColorSliderControl.bounds.setter () #16 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #17 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #18 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #19 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #20 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #21 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #22 0x000000010559ea8c in ColorSliderControl.bounds.setter () #23 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #24 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #25 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #26 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #27 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #28 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #29 0x000000010559ea8c in ColorSliderControl.bounds.setter () #30 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #31 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #32 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #33 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #34 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #35 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #36 0x000000010559ea8c in ColorSliderControl.bounds.setter () #37 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #38 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #39 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #40 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #41 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #42 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #43 0x000000010559ea8c in ColorSliderControl.bounds.setter () #44 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #45 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #46 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #47 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #48 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #49 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #50 0x000000010559ea8c in ColorSliderControl.bounds.setter () #51 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #52 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #53 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #54 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #55 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #56 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #57 0x000000010559ea8c in ColorSliderControl.bounds.setter () #58 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #59 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #60 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #61 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #62 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #63 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #64 0x000000010559ea8c in ColorSliderControl.bounds.setter () #65 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #66 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #67 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #68 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #69 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #70 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #71 0x000000010559ea8c in ColorSliderControl.bounds.setter () #72 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #73 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #74 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #75 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #76 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #77 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #78 0x000000010559ea8c in ColorSliderControl.bounds.setter () #79 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #80 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #81 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #82 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #83 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #84 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #85 0x000000010559ea8c in ColorSliderControl.bounds.setter () #86 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #87 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #88 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #89 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #90 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #91 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #92 0x000000010559ea8c in ColorSliderControl.bounds.setter () #93 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #94 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #95 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #96 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #97 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #98 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #99 0x000000010559ea8c in ColorSliderControl.bounds.setter () #100 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #101 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #102 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #103 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #104 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #105 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #106 0x000000010559ea8c in ColorSliderControl.bounds.setter () #107 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #108 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #109 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #110 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #111 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #112 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #113 0x000000010559ea8c in ColorSliderControl.bounds.setter () #114 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #115 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #116 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #117 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #118 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #119 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #120 0x000000010559ea8c in ColorSliderControl.bounds.setter () #121 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #122 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #123 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #124 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #125 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #126 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #127 0x000000010559ea8c in ColorSliderControl.bounds.setter () #128 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #129 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #130 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #131 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #132 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #133 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #134 0x000000010559ea8c in ColorSliderControl.bounds.setter () #135 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #136 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #137 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #138 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #139 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #140 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #141 0x000000010559ea8c in ColorSliderControl.bounds.setter () #142 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #143 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #144 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #145 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #146 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #147 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #148 0x000000010559ea8c in ColorSliderControl.bounds.setter () #149 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #150 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #151 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #152 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #153 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #154 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #155 0x000000010559ea8c in ColorSliderControl.bounds.setter () #156 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #157 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #158 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #159 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #160 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #161 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #162 0x000000010559ea8c in ColorSliderControl.bounds.setter () #163 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter () #164 0x00000001849cb3e0 in -[UIView(Geometry) _applyISEngineLayoutValuesToBoundsOnly:] () #165 0x00000001847a8820 in -[UIView(Hierarchy) layoutBelowIfNeeded] () #166 0x000000010558d3ac in AdjustedHitBoxColorControl.contentBounds.getter at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/AdjustedHitBoxColorControl.swift:49 #167 0x000000010559ef64 in ColorSliderControl.updateCornerRadius() at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:89 #168 0x000000010559eab8 in ColorSliderControl.bounds.didset at /Users/bobdegraaf/Dropbox (Persoonlijk)/GraafICT/Projecten/Apps/ZZP Admin/Code/Pods/FlexColorPicker/FlexColorPicker/Classes/Controls/ColorSliderControl.swift:63 #169 0x000000010559ea8c in ColorSliderControl.bounds.setter () #170 0x000000010559e9cc in @objc ColorSliderControl.bounds.setter ()
from flexcolorpicker.
Thank you. Will look into this ASAP. However, if you find time to find the fix in FlexColorPicker yourself, I will gladly accept a pull request.
from flexcolorpicker.
I use a very simple color picker, just the default:
let colorPickerController = DefaultColorPickerViewController() colorPickerController.delegate = self colorPickerController.selectedColor = UIColor.init(hex: user.invoice_color_hex) colorPickerController.navigationItem.title = "Settings_InvoiceLayout_HeadersColor".localized() self.navigationController?.pushViewController(colorPickerController, animated: true)
It has always worked perfectly, until iOS15. It seems to crash on this line:
public var contentBounds: CGRect { layoutIfNeeded() return contentView.frame } //Previous functions before it arrived here private func updateCornerRadius() { gradientBackgroundView.cornerRadius_ = contentBounds.height / 2 } open override var bounds: CGRect { didSet { updateCornerRadius() updateThumbAndGradient(isInteractive: false) } }
Same here!
from flexcolorpicker.
Guys I would really love to help ASAP, but the problem is I am still on Mac 11 Big Sur and I would need to update in order to be able to install a new XCode with iOS 15 support. I cannot do that yet.
If somebody who is facing this problem can patch it and send a pull request that would be accepted and I will release a new CocoaPods version as well. Otherwise, you will have to wait for the patch a little bit. I apologize.
from flexcolorpicker.
@RastislavMirek This is the same issue I was having, we can tag one of these as duplicates. I may look into fixing this myself, as I can't use auto layout at all.
Why do you need to update? I have Big Sur and am using Xcode 13 with iOS 15.
from flexcolorpicker.
Having the same crash here. :/ Can't wait for a proper fix!
from flexcolorpicker.
@RastislavMirek I will test it this weekend and let you know, thanks for the quick fix.
from flexcolorpicker.
@RastislavMirek I will test it this weekend and let you know, thanks for the quick fix.
@gintechsystems Did you have a chance to test?
from flexcolorpicker.
@RastislavMirek Yes, it is working now. I am curious though, why do we need to call layoutIfNeeded twice? Does it not work with one? I guess I would have to go through the code to see what is going on fully to understand...auto layout does work now however I was forced to set a width and height for the view, I couldn't just put it between two elements and it would scale correctly like normal. Something we can look into later.
Anyway, just giving my thoughts. Thanks again for the fix!
from flexcolorpicker.
I am not sure actually why there are 2 calls to layoutIfNeeded. I coded this a long time ago and I forgot what problem I solved this way...
auto layout does work now however I was forced to set a width and height for the view, I couldn't just put it between two elements and it would scale correctly like normal. Something we can look into later.
This is definitely an issue. Would you mind creating a separate issue for this with example code? I will look into it.
from flexcolorpicker.
@RastislavMirek Has it always been an issue? Sure, I can do that for you. I will get back to you when I have time....it may be a little. I have been busy at my FT job.
from flexcolorpicker.
@gintechsystems No, this is new. Ok, I will wait. Thanks.
from flexcolorpicker.
@gintechsystems No, this is new. Ok, I will wait. Thanks.
@RastislavMirek I plan to look at this over the weekend, will keep you updated. Thanks for the patience.
from flexcolorpicker.
I just got time to look at it, works great! I think it's even better because in the previous version the layout wasn't good when I rotated, but now it updates the layout nicely. Thanks!
from flexcolorpicker.
@RastislavMirek - Link to the zip file with an example of the issue I am running into as mentioned earlier, I am required to set a width and height otherwise it just shows the thumb but not the color wheel, which is interesting. I could be wrong but I don't think auto layout is working as I am expecting or it could be I am missing a constraint. All you should have to do is compile and run. I did build using Xcode 13.
from flexcolorpicker.
I plan on forking your library and seeing if I can help resolve this issue, along with understanding the need for multiple layout calls.
from flexcolorpicker.
Related Issues (20)
- SwiftUI support needed HOT 1
- When installed via SPM or CocoaPods unnecessary files are downloaded HOT 1
- Allow the Demo to be selectivelly installed and run via SPM
- ColorPicker Takes time to Load HOT 1
- iOS 13 dark mode support HOT 2
- Swift 5.2 complaint HOT 1
- 1.4.1 Won't Run HOT 4
- Add Other Rectangular Picker HOT 2
- Is it me or is does brightness work backwards? HOT 4
- Put examples how to work with custom view via code. HOT 4
- I want to change the ColorPicker Background color according to our desire.
- ColorPickerDelegate HOT 2
- Invalid Excludes when using with Xcode 13 HOT 2
- AutoLayout With ScrollView Crashing - iOS 15 Xcode 13 HOT 2
- Memory leak HOT 1
- I want this Color picker in UIView. Can I subclass this..? HOT 1
- Can I have my custom colors in circle palette. HOT 1
- How to set custom colors to RadialPaletteControl.
- RectangularPaletteControl has 'open' function but not declared is 'open'
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from flexcolorpicker.