-
Notifications
You must be signed in to change notification settings - Fork 275
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Slider "active area" is offset from where the actual element is #470
Comments
Hello @Torniojaws! |
I also had this problem when upgrading from version 3 to version 4. @Torniojaws, when this happens, could you please try to change the width of the browser. Will it work after that (without reloading)? |
@mathias-berg I have the same problem,the slider offset problem can be solved by changing the browser width. But there is no reason for users to change the browser size. Secondly, our web application will be nested by iframe, so the problem will still not be solved. |
Not using slider style to change the width and height, and using for external Settings, this issue still exists but has not been resolved. |
Sadly, the fix that I was working didn't fix this. Still had the problem occasionally, will look into another solution. |
@BartoszKlonowski Screen.Recording.2023-01-13.at.17.28.51.mov@mathias-berg |
The problem is because at This is the the part of the code that is causing this since containerRef.current is not a truthy value all the times. |
I find this bug making this library, unfortunately, useless UPDATE: upgrading to expo 46->47 has fixed the issue |
I'm on SDK 47 and it still exists for me |
A workaround I found is to force const [tempThumbStyle, setTempThumbStyle] = React.useState<ViewStyle>({
width: 0,
height: 0,
});
React.useEffect(() => {
setTempThumbStyle({ width: undefined, height: undefined });
}, []); And <Slider
...
//@ts-ignore Not registered in types
thumbStyle={Platform.OS === "web" ? tempThumbStyle : undefined}
/> Not pretty, but does the trick for now. |
Still broken in latest version of expo (49.0.10) |
Still occurring for me on Expo sdk 50. |
@YoussefHenna's workaround worked for me. |
If someone looking for a solution and above don't work for you - try to use regular
|
We found that this issue was caused by the react-navigation screen transition. The slider renders before the transition is complete, so the math to figure out the slider value based on touch is offset. Here is our workaround: (Expo / React Navigation)
The resize event causes the slider to re-evaluate where touches on the slider are. |
Environment
(Possibly) relevant deps from package.json:
Description
I have a Slider component that works perfectly fine on browser simulated mobile phone environment (Chrome -> responsive "iPhone 6/7/8 Plus" preset). But when I use the slider on a bigger screen (Chrome -> responsive "iPad Pro" preset), the active range (where the slider starts moving with mouse drag) is far to the left from where the actual slider element is.
Let's say, the slider element is between width 750px and 900px:
Here's a video. The first part is the "click makes it max value", and then comes the slider offset:
Screen.Recording.2022-12-23.at.15.02.25.mov
Reproducible Demo
I've also tried setting a maxWidth for the containing
<View>
but it doesn't change the behaviour.I have also tried using
onSlidingComplete
andonSlidingStart
, but the behaviour is still the same.The text was updated successfully, but these errors were encountered: