Skip to content
This repository has been archived by the owner on Sep 5, 2024. It is now read-only.

Draggable sidenav #1591

Closed
tam3r opened this issue Feb 20, 2015 · 14 comments
Closed

Draggable sidenav #1591

tam3r opened this issue Feb 20, 2015 · 14 comments
Assignees
Labels
- Lots of Comments for: internal contributor The team will address this issue and community PRs are not requested. P3: important Important issues that really should be fixed when possible. resolution: duplicate type: enhancement type: feature

Comments

@tam3r
Copy link

tam3r commented Feb 20, 2015

Is it possible to make sidenav draggable? Not only google apps like gmail and play music demonstrate the approach, but also MD bottom sheets.

bottomsheet

It feels more responsive that way and would be an appreciated enhancement.

@andreabadesso
Copy link

+1

@ThomasBurleson
Copy link
Contributor

@tam3r - what about the other UX questions.

  • Bottomsheet - How high should the bottomsheet be draggable? Why? What about snap-to when released?
  • SideNav - Swipable I understand; why do you want this draggable?

@ThomasBurleson ThomasBurleson modified the milestones: Backlog, 0.10.0 Mar 11, 2015
@tam3r
Copy link
Author

tam3r commented Mar 11, 2015

Bottomsheet looks good as is (to me at least). Not sure anything needs to be changed in terms of how far it can be pulled.

"Draggable" may not be the best word to describe how it is in native apps. I meant that it may be a good idea to let the sidenav position follow a finger position. When the menu is closed, any touch that starts on the left edge of the screen and lasts for like 300ms or longer makes the right edge of the sidenav appear. Sliding to the right side makes the sidenav move along with the finger. If the finger is released before the 50% of the menu width is reached then the sidenav slides back out. Otherwise it opens to the full width. It does not go any further than full width of sidenav though.

With the sidenav open swiping horizontally towards the left side of the screen makes the sidenav slide out along with the finger. Again, if the finger is released before the sidenav is half-closed then the sidenav slides back. Otherwise, it slides out.

To me, that kind of behavior feels more responsive and "native". As far as I remember there have been requests for "slide from the edge to open a sidenav" feature, so that's killing two birds with one stone.

@rdesimone
Copy link

I agree to @tam3r - (most of the sidenavs in JS frameworks are not implemented native like). There is another issue: when opening the sidenav with a swipe actually, the swipe event has to be attached to the view (content). In the case the swipe event is needed for another task (e.g. view change, swipe events on list items), the swipe event might not be available. Maybe a small element overlaying the content at the left (or right) border could be used to attach a swipe/touch event and to initiate the opening of the sidenav.

@gustavohenke
Copy link

I've suggested a review in #1890, which for me looks very similar to this one.
So, 👍 for what has been proposed here.

I've been implementing native-like swipe gestures in my app and it's rather complex. The community would benefit a lot if this was implemented in the ngMaterial core.

@rdesimone
Copy link

@marcysutton maybe take also a look at the core-drawer-panel from the Polymer project https://www.polymer-project.org/0.5/docs/elements/core-drawer-panel.html

@ThomasBurleson
Copy link
Contributor

@rdesimone, @gustavohenke - agreed this will be a great feature. The team likes it... we have many other features to deliver first; which is why this request is in the backlog.

@ThomasBurleson ThomasBurleson modified the milestones: 0.10.0, Backlog May 2, 2015
@ThomasBurleson ThomasBurleson added the for: internal contributor The team will address this issue and community PRs are not requested. label May 2, 2015
@ThomasBurleson ThomasBurleson modified the milestones: 0.10.0, 0.11.0 Jun 16, 2015
@ThomasBurleson ThomasBurleson modified the milestones: 0.11.0, post-1.0 Jul 31, 2015
devversion added a commit to devversion/material that referenced this issue Dec 8, 2015
devversion added a commit to devversion/material that referenced this issue Jan 1, 2016
devversion added a commit to devversion/material that referenced this issue Jan 1, 2016
@ThomasBurleson
Copy link
Contributor

This issue is closed as part of our ‘Surge Focus on Material 2' efforts.
For details, see our forum posting @ http://bit.ly/1UhZyWs.

@williamoliveira
Copy link

So this feature was essentially done, it had a pull request and now has been killed because of a new version that will take months to be released?

@marco-silva0000
Copy link

what is the status of this?

@devversion
Copy link
Member

We are hoping to re-address this after #9362 is available.

This makes sure that there are no regressions with content inside of a draggable sidenav.

@devversion devversion reopened this Aug 30, 2016
@devversion devversion added P3: important Important issues that really should be fixed when possible. and removed has: Pull Request A PR has been created to address this issue labels Aug 30, 2016
@ThomasBurleson ThomasBurleson modified the milestones: Deprecated, - Backlog Nov 29, 2016
@WillsB3
Copy link

WillsB3 commented Jun 9, 2017

I see this has been re-opened for a while now.

Is there anything I can do to help the process of getting the existing PR merged?

marekmicek pushed a commit to marekmicek/material that referenced this issue Nov 14, 2017
marekmicek pushed a commit to marekmicek/material that referenced this issue Mar 17, 2018
@Splaktar Splaktar removed this from the - Backlog milestone Apr 5, 2018
@Splaktar
Copy link
Member

Splaktar commented Apr 5, 2018

Closing as duplicate of #35.

@Splaktar Splaktar closed this as completed Apr 5, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
- Lots of Comments for: internal contributor The team will address this issue and community PRs are not requested. P3: important Important issues that really should be fixed when possible. resolution: duplicate type: enhancement type: feature
Projects
None yet
Development

No branches or pull requests