         
         updateControl(to: value)
         sendActions(for: .valueChanged)
-        
         return true
     }
     
     public override func endTracking(_ touch: UITouch?, with event: UIEvent?) {
         sendActions(for: .editingDidEnd)
+    }
+    
+    public override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {
+        if interactableBounds.contains(point) {
+            return true
+        }
+        return super.point(inside: point, with: event)
     }
     
     // MARK: - Private

    
    internal var confiningTrackFrame: CGRect {
        return sliderTrackView.frame.insetBy(dx: horizontalPadding, dy: 0)
    }
    
    internal func commonInit() {

    
    public override func beginTracking(_ touch: UITouch, with event: UIEvent?) -> Bool {
        let location = touch.location(in: self)
        return interactableBounds.contains(location)
    }
    
    public override func continueTracking(_ touch: UITouch, with event: UIEvent?) -> Bool {
