Skip to content

Commit

Permalink
Fix overlay visibility when using overlayVisibilityBehaior setting
Browse files Browse the repository at this point in the history
  • Loading branch information
mkko committed Feb 10, 2024
1 parent 67eefc3 commit fb71ae9
Showing 1 changed file with 19 additions and 23 deletions.
42 changes: 19 additions & 23 deletions DrawerView/DrawerView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -1185,33 +1185,29 @@ private struct ChildScrollViewInfo {
return
}

let opacityFactor: CGFloat
switch (self.overlayVisibilityBehavior) {
case .disabled:
return
case .topmostPosition:
break
case .whenOpen:
break
}

let values = snapPositions(for: DrawerPosition.allPositions, inSuperView: superview)
.compactMap { pos -> (position: CGFloat, value: CGFloat)? in
guard let opacityFactor = self.opacityFactor(for: pos.position) else {
return nil
opacityFactor = 0
case .topmostPosition, .whenOpen:
let values = snapPositions(for: DrawerPosition.allPositions, inSuperView: superview)
.compactMap { pos -> (position: CGFloat, value: CGFloat)? in
guard let opacityFactor = self.opacityFactor(for: pos.position) else {
return nil
}
return (
position: pos.snapPosition,
value: opacityFactor
)
}
return (
position: pos.snapPosition,
value: opacityFactor
)
}

let opacityFactor: CGFloat
if values.count > 0 {
opacityFactor = interpolate(
values: values,
position: position)
} else {
opacityFactor = 0
if values.count > 0 {
opacityFactor = interpolate(
values: values,
position: position)
} else {
opacityFactor = 0
}
}

if opacityFactor > 0 {
Expand Down

0 comments on commit fb71ae9

Please sign in to comment.