this post was submitted on 31 Dec 2024
6 points (100.0% liked)
Arctic
427 readers
1 users here now
Arctic is a Lemmy client for iOS built on pure Swift. It currently supports iOS 15+ and Lemmy v0.17+
Get the latest version on TestFlight, or check it out on the AppStore.
If you would like to support Arctic’s development, feel free to Buy Me A Coffee
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
You were correct; it was disregarding the autoplay setting when dismissing the media viewer. I’ve incorporated all of your suggestions into version 0.4.3.2, which I just released a few minutes ago. I appreciate your feedback, and please let me know if there are any problems with the update.
Thanks for getting to this so quickly—I’ll make separate replies as I get testing to try to keep things organised.
One the ‘zoomed image small pan’, it’s definitely better than before, but what I see now is that there’s a very small threshold below which the image doesn’t move at all, but the controls are shown. And so it can be even harder to hide them again. Let me know if you can’t reproduce that, and I’ll make a recording—but I don’t think the recorder shows the screen tap position so it might be hard to see what’s happening. The basic steps are:
I also see this if the image can’t move if for example it’s very wide aspect and double-tap has left black margins top and bottom—then try dragging slightly up or down and the controls are shown.
This one is a bit tricky. I’ve noticed the small threshold when dragging where nothing happens, and it can be recognized as a tap. I’m not exactly sure what is causing the dead zone for panning. I have a feeling it is due to 2 gestures waiting to get directional info to decide which one to trigger.
I’ll do some more digging and see what I can come up with. Things get rather convoluted when layering multiple gestures together.
This one still seems to be there… See this example where many times a small drag activates the controls.
Sometimes the drag moves the image, sometimes it doesn’t (not sure if the screen recorder can capture taps / drags?).
Would it be too much to simply disable the controls overlay when zoomed in? Just thinking that might be easier than wrangling the gestures.
Edit: forgot to say that disabling might also solve the issue of accidental single tap before zooming, which currently leaves the controls visible and no simple way to get rid of them without zooming out again.
Alright, I’ve made some progress and believe I’ve finally resolved the issue. It turned out that my previous approach to checking for movement using tap gestures was only detecting movement after the gesture had already been recognized. I’ve updated the code accordingly, and I’ve been spamming pan gestures for the past day without any issues. So far, I haven’t noticed a single instance of the controls showing up.
As an additional layer of security, I might consider disabling the gesture while the user is zoomed, unless the tap occurs within the image margins, where the pan gesture is already not recognized.