Skip to content
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

Bottom navigation #4376

Open
3 tasks done
icubyx opened this issue Aug 25, 2020 · 20 comments · May be fixed by #7176
Open
3 tasks done

Bottom navigation #4376

icubyx opened this issue Aug 25, 2020 · 20 comments · May be fixed by #7176

Comments

@icubyx
Copy link

icubyx commented Aug 25, 2020

Checklist

  • I have used the search function to see if someone else has already submitted the same feature request.
  • I will only create one feature request per issue.
  • I will describe the problem with as much detail as possible.

System info

App version: 2.0.0 RC7

Feature description

With the new interface standards on iOS and Android, bottom navigation bars are becoming common. It would be a good idea to place the common functions - Subscriptions, Episodes, Downloads, Playback History and Queue in the bottom navigation bar for faster access and less swipes/taps.


[EDIT BY PROJECT MEMBER]
To anyone interested in working on this: for implementation notes agreed upon by the team (through various calls) please see this comment.

@BeSanidhya
Copy link

I am willing to give this a shot, if you would assign it to me.

@ByteHamster
Copy link
Member

This change needs some more discussion because it completely changes the way users interact with th app.

@BeSanidhya If you want to help, I suggest to start with something labelled "good first issue". Those are self-contained and do not need discussion. Just leave a comment when you have started working on an issue - no need for assigning.

@keunes
Copy link
Member

keunes commented Sep 2, 2020

Thank you @icubyx for bringing this up. I just start using a Fairphone 3,which has a screen so big I can't easily reach the top(left). Moving things around could be a nice improvement for such devices. Firefox already implemented this.

However, it wouldn't be enough to simply move the main menu items in a bottom bar - items like 'back' and 'filter' would still be hard to reach in the top bar. So to do it properly, I think we would need to revisit the whole navigation. This would indeed require quite some discussions, and probably also the involvement of a UI expert (we could ask folks of OpenSourceDesign again). (And, perhaps needless to say, this would be an 'experimental' feature, requiring an extra setting.)

For a start, we might create a thread on the forum to discuss ideas and collect other apps that have such bottom navigation. @icubyx, would you be interested in starting that thread?

@icubyx
Copy link
Author

icubyx commented Sep 2, 2020

@keunes yes it will need just more than the icons at the bottom. As a UX designer, I can work on this unless @BeSanidhya has already started.

@ByteHamster
Copy link
Member

Users really do not like change. Especially if it changes their muscle memory. When developing version 2.0.0, I paid attention on the fact that everything still feels the same even if it looks a bit different. This proposal sounds like a pretty massive UI change. I fear that a big change like this could easily upset users. While 2.0.0 is not yet released, something like this change would then be version 3.0.0

@icubyx
Copy link
Author

icubyx commented Sep 2, 2020

@ByteHamster I agree with you that we cannot make an abrupt change - it will need to be gradual. Having said that, most popular podcast readers that I checked have icons at the bottom. So if we are considering adoption, these adopters will be comfortable with this change. we can start with icons at the bottom and introduce more changes gradually.

@keunes
Copy link
Member

keunes commented Sep 2, 2020

@icubyx Ah, a UX designer - that's great :) If I interpreted correctly, @BeSanidhya proposed to work on the code, so feel free to start a discussion on the forum.

Users really do not like change. Especially if it changes their muscle memory. When developing version 2.0.0, I paid attention on the fact that everything still feels the same even if it looks a bit different. This proposal sounds like a pretty massive UI change. I fear that a big change like this could easily upset users. While 2.0.0 is not yet released, something like this change would then be version 3.0.0

Which is why I proposed to introduce this first as an 'experimental' feature. Mozilla also introduced a setting for this change. I enabled it directly because of my screen size. Other people comfortable/familiar with this approach could do the same.

To be honest 'gradual implementation' I think will be tricky. It does not allow testers to experience the new approach as a whole. I would rather have this thought out properly as a whole, get it implemented as an experimental feature, get thorough feedback from users. Then either we could still slowly introduce changes for everybody (moving them out of the 'experimental' phase).

@icubyx
Copy link
Author

icubyx commented Sep 6, 2020

Have a design for the bottom navbar without changing anything else much. New to all this so can someone guide me how to share it?

@ByteHamster
Copy link
Member

What do you have? Mock-ups? Code?

@icubyx
Copy link
Author

icubyx commented Sep 6, 2020

What do you have? Mock-ups? Code?

Mockup and the icon PNG files in various sizes.

@ByteHamster
Copy link
Member

Feel free to post them here, so they can be discussed :)

@icubyx
Copy link
Author

icubyx commented Sep 6, 2020

First design for the bottom nav bar. A few notes:

  1. I have used the lighter blue color from the AntennaPod logo for the backgrounds.
  2. The icons are for Subscriptions, Episodes, History, Downloads, Queue in that order.
  3. Experimented with the top bar colors too.
  4. Rearranged the tab order to "New | Favorites | All" to visually balance the screen.
    Comments welcome :)

[EDIT - uploaded more complete image]

Episodes

@icubyx
Copy link
Author

icubyx commented Sep 19, 2020

Uploading assets for miniplayer and bottom navigation bar...
antennapod_navbar_assets.zip

@keunes
Copy link
Member

keunes commented Oct 2, 2020

Thanks @icubyx for sharing that. I don't think we should implement a bottom navigation bar without reviewing also the drawer menu. What would be your view on this? We should avoid having two duplicate navigation systems. That would complicate code and interface.

@keunes keunes added Type: Feature request Needs: Mock-up or user story Feature or enhancement request with an impact on the UI/UX, and needs mock-ups or user stories labels Oct 2, 2020
@icubyx
Copy link
Author

icubyx commented Oct 9, 2020

Thanks @icubyx for sharing that. I don't think we should implement a bottom navigation bar without reviewing also the drawer menu. What would be your view on this? We should avoid having two duplicate navigation systems. That would complicate code and interface.
I think to start with, we should have the frequently accessed sections on the bottom navigation bar - like downloads, queue and history. The others - like settings, subscriptions and episodes can go in the drawer menu. As @ByteHamster pointed out, users of this app are used to a certain interface and we should not shift abruptly - open to other suggestions...

@widlok
Copy link
Contributor

widlok commented Dec 2, 2020

I don't see this often in apps, BUT instead of creating few versions of AP (normal and experimental) which will divide user-base keep both navigation. I don't see any problem with that if we are not adding any new menu items - since menu is just a reference to different AP pages, bottom and side navigation will direct to same pages (it will not cause additional mess in code). I do believe that bottom menu is immensely better than side menu, even on small phones its just more convenient to not have to move fingers and that's where smartphones direction heading - letting users do everything they want without moving fingers around whole screen (that's basically what for ex. Samsung OneUI 2.0 aims to do). So a solution could be adding a short message on top of side navigation saying "this menu will be removed in version 2.5.0 please use bottom navigation menu." (version is random). THE only problem i see is that you cant fit all side nav menu items on bottom - where could other items go?
Other solution would be simply to keep both nav bars. Bottom one would contain items that are most used by users, and side nav bar would be ultimate menu where people go to only once in a while (when subscribing to new feed etc.). Does AP collect stats on which app parts are most clicked or used? That would be extremely useful for keeping most relevant things under user fingertips.

@antennapod-bot
Copy link

This issue has been mentioned on AntennaPod Forum. There might be relevant details there:

https://forum.antennapod.org/t/add-spacer-on-top-of-the-hamburger-menu-for-easier-access/127/9

@keunes
Copy link
Member

keunes commented May 10, 2021

A discussion on bottom screen navigation is going on our forum. I'll lock this issue until a conclusion has been reached. Please feel free to add your comments there!

@AntennaPod AntennaPod locked and limited conversation to collaborators May 10, 2021
@keunes keunes removed the Needs: Mock-up or user story Feature or enhancement request with an impact on the UI/UX, and needs mock-ups or user stories label Aug 15, 2022
@keunes
Copy link
Member

keunes commented Aug 15, 2022

Proposal in lign with Material design 3:
Interactive mock-up in PenPot

Non-interactive mock-ups

AP-BN_Home AP-BN_More menu
More menu displayed in the bottom-right corner with small margin.
AP-BN_Navigation items

Description of UX and changed elements:

  • 4 items, and 'more' - as per the 'Navigation items' setting
  • Standard Material Design 3
  • Icons:
  • Labels always visible (not only when active), as our icons alone aren't always as clear
  • 'Small Badge' for Inbox (colour: primary)
  • When tapping 'More' a customised menu is displayed:
    • Colour: background (not: surface)
    • Icon & text colour: on background (not: on surface)
    • List contains all items that are are set visible in the menu settings, including the mandatory Settings.

A new setting is introduced: Settings > User Interface > Navigation location, with 2 options: "Side" and "Bottom". Existing users have the value 'Side', new installs will get the value 'Bottom'.

Settings > User Interface > Navigation items is updated:

  • Full screen, listing all available navigation items
  • When bottom navigation is set:
    • Displayed
      • First four items visible in the navigation bar
      • Visual separator of 6 dp with colour background
      • Subsequent items (above the heading) displayed in the overflow ('More') menu
      • The two blocks in this section are considered 1 list:
        • It is not possible to have 2 items visible in the navigation bar, and 3 in the overflow menu (it would be: 4 in navigation bar, 1 in overflow menu)
        • When there are 4 items in the navigation bar list, and another item is dragged into the list, the last item on the list gets pushed to the overflow menu
    • Not displayed
      • 'Not displayed' heading in style body small in a container with background colour Surface-Variant
      • Items below the 'Not displayed' heading are not displayed in the (overflow) menu
      • The 'Settings' item is fixed to be the last item in the overflow menu (is mandatory)
  • When sidebar navigation is set:
    • All of the Displayed block are displayed, in the order as indicated
    • The visual separator is still visible in the setting screen, but ignored
  • Existing users: the default navigation is used, and unticked navigation items are listed under 'not displayed'
  • New installs: the following order is applied: Home, Inbox, Queue, Subscriptions, Discover, Episodes, History, Statistics, Downloads

@keunes keunes changed the title Common functions in bottom navigation bar? Bottom navigation Aug 15, 2022
@ByteHamster
Copy link
Member

Proof of concept here: #6683

The text in the Material3 bottom navigation bar is quite long and does not have a lot of spacing. Maybe using only icons without text (or only text for the selected item) could be better

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants