Skip to content

Please don't throw away view state #1394

@anohren

Description

@anohren

When a new top level view is selected in the main menu the previous view's state is immediately discarded. This is quite frankly super annoying. Imagine if iOS did this by default with all its tab bars; it'd drive people insane, for the last 15 years!

In less than 5 minutes I managed to twice fail an edge swipe to navigate up in a nav controller, instead had my swipe registered as "reveal main menu" whereupon I accidentally selected a new menu item. When I returned to the previous view it has reset the tab selection + entire deep navigation. This is the opposite of Design for Error, where mistakes should be reversible (think Back button in file/web browsers, etc).

I'd argue that more than any other open issue, this would single-handedly and significantly increase the experience of using the app. I urge you to consider this. I'd even make a case for persisting the navigation (if it can be made serializable), it's so important to the experience. You can easily navigate ten levels in the various sections.

It's always possible to respond to low memory events if that later turns out to be a problem on 13 year old devices (but hasn't the iOS requirement gone up recently?)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions