Xamarin-Sidebar icon indicating copy to clipboard operation
Xamarin-Sidebar copied to clipboard

Make sidebar pan gesture customizable

Open ElteHupkes opened this issue 7 years ago • 3 comments

The pan gesture used to open the sidebar overrides most other gestures in the content view that it targets, and doesn't mark itself as "failed" when it decides to ignore a certain gesture. This makes it very hard to use other gestures in this view. When implementing a custom gesture some success can be achieved by being creative with ShouldBeRequiredToFailBy... and the likes, but when you do not have control over the other gesture recognizer (my concrete example: a swipe left to start UITableViewCell editing mode) you're basically left without options.

The solution would be to

  1. Make the pan gesture fail appropriately (can be as simple as returning false from SlideoutPanDelegate.ShouldReceiveTouch() when the touch is not inside the gesture active area) and / or
  2. Allow access to the gesture recognizer so a custom delegate can be used. Sidebar.PanGesture is public, but because the actual _sidebar is a private property of the SidebarController it can currently only be accessed with reflection (which is what I'm doing to work around the problem right now).

I'd be willing to submit a PR for one or both of these changes if this sounds reasonable to you.

ElteHupkes avatar Feb 27 '18 16:02 ElteHupkes

I've had a bunch of people submit issues related to this and never knew how to fix it. If you could submit a PR with those fixes that would be great!

jdehlin avatar Feb 27 '18 19:02 jdehlin

Okay, see #83 . Let me know if I missed anything!

ElteHupkes avatar Feb 28 '18 11:02 ElteHupkes

Fixed in: https://github.com/jdehlin/Xamarin-Sidebar/pull/84

martijn00 avatar Mar 21 '18 14:03 martijn00