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

Back button now exits instead of returns to feed list #1288

Closed
mentalinc opened this issue Oct 9, 2023 · 23 comments · Fixed by #1304
Closed

Back button now exits instead of returns to feed list #1288

mentalinc opened this issue Oct 9, 2023 · 23 comments · Fixed by #1304

Comments

@mentalinc
Copy link
Contributor

When browsing a feed and pressing the back button the app now exits instead of showing the full feed list again to select another feed or folder to browse next.

Something has changed from 0.9.9.81 and 0.9.9.82 as this is new behaviour.

@stefan-niedermann
Copy link
Member

Yes, this is by intention to align the app more with expected behavior (by far most apps in the Android ecosystem do not have an opened sidebar as "root" view).

Closing therefore as "works as designed".

@meichthys
Copy link

meichthys commented Oct 10, 2023

IMO this latest change hurts the UX since we now need to tap the menu button every time we want to change feeds.
Many (Most?) apps that close with the back button have an option like "double back to exit". Could we re-open this as a feature request?

@stefan-niedermann
Copy link
Member

Sure, the decision is up to @David-Development (maintainer).

I strongly disagree though as the old behavior as well as the proposed "double tap to exit" solution does not match any guidelines I am aware of.

The opposite is true: Most apps I am aware of with a sidebar that is capable of displaying any kind of categories will not open the sidebar when pressing back. (for example K-9 Mail or LineageOS file explorer). Also Nextcloud and Notes don't do this.

If (and only if) it is a goal to make switching between feeds the top hierarchical view, then it should be moved out from the sidebar, and the app needs a complete redesign for this part.

@rhetticent
Copy link

rhetticent commented Oct 11, 2023

I hope this doesn't come off as combative or aggressive — I appreciate the time and effort that has gone into the latest release, and was very excited when I saw an update was available in F-Droid this morning.

With that said, this does feel like a regression to me as well. I can understand the viewpoint that many applications may not behave in this manner, but have a hard time accepting it as a dogmatic edict that all apps should act the same way. Take for example AntennaPod - it has the exact behavior because it makes navigation much easier.

screen-20231011-165314.mp4

It's also optional:

Screenshot_20231011-165906~2

I unfortunately have downgraded to to 0.0.0.81 to bring this behavior back, but will admit that it's not really all that terrible given that .81 is a pretty solid release.

@mentalinc
Copy link
Contributor Author

The Back button opens drawer would be a good middle ground I feel, enable for those who like it, but defaulted to off for those who would like the more consistent ux across apps?

It is an interesting question as to what is the root, and I'd argue the tree of feeds i.e. the sidebar is the root.
I know you can pull the sidebar out to access, but it's on the opposite side of the screen for right hand user, and the back button is not very much a muscle memory.
Many times a day I now find myself closing the open, and having to relaunch it due to the change.

@mentalinc mentalinc changed the title Back button now exists instead of returns to feed list Back button now exits instead of returns to feed list Oct 12, 2023
@A37stKpDodi4BEr65TXb
Copy link

A37stKpDodi4BEr65TXb commented Oct 12, 2023

Very sad to see this function removed. Downgraded to previous release.
It would be really nice if this could be added back as an optional toggle in the settings, or added to the list of swipe actions.

@stefan-niedermann
Copy link
Member

Independently of the final decision, please take a look at the FAQ of Deck Android regarding the topic "Yah, just make an option for everything". Different project, different maintainer, but the listed reasons are valid from my point of view for nearly each other project as well and relevant to consider for this topic.

@A37stKpDodi4BEr65TXb
Copy link

...but the listed reasons are valid from my point of view ....

I beg to differ.
This issue is not about adding something brand new to the app, but rather the removal of an existing feature without providing an alternative that (arguably) affects ease of use.

@tetzlav

This comment was marked as duplicate.

@stefan-niedermann
Copy link
Member

stefan-niedermann commented Oct 13, 2023

@A37stKpDodi4BEr65TXb Sorry, but I can't see any difference between new or readded features regarding the linked statements. Which of the statements one is not true if we add an option two satisfy two different behaviors? I don't think that a freetime project with limited ressources should only think about new features, it is valid to evaluate maintianability for existing features as well. That said this is obviously not an argument for changing the behavior, it is an argument for maintaining two different behaviors with options.

@tetzlav I understand that changed behavior is exciting, but if you have no information to add to the discussion, please use GirHub reactions (👍 / 👎) to express your opinion. Comments without information make it hard to follow a discussion and spam any user who subscribed to the issue.

@mentalinc
Copy link
Contributor Author

I'm working on a push request to see if we can add it as a preference.

@mentalinc
Copy link
Contributor Author

I'm a bit confused as I've returned this method back to how it was before this commit, but doesn't work as expected and the app still exits instead of opening the drawer?
28ea07e

Here is my suggested code, I won't make a pull request yet as it doesn't provide the desired result - but it's not clear why
e4cdb67

@meichthys
Copy link

I haven't looked at it closely, but could it be that the logic exists in other places as well? All the logic you added back in is under an if statement that seems to only be relevant for podcasts(?)

@mentalinc
Copy link
Contributor Author

Looks like there might have been some further changes in the refactoring commits that onBackPressed() override isn't even getting called at all anymore.

Nothing jumped out as I went through the full diff v.0.9.9.81...v.0.9.9.82 to explain why no longer being called

@mentalinc
Copy link
Contributor Author

Found the next step: 86ff592
This android manifest change to enable the new android 14 gestures stops all the onBackPressed() overrides.

This is the next step to look into for anyone else looking into it:
https://developer.android.com/guide/navigation/custom-back/predictive-back-gesture#migrate-existing

@David-Development
Copy link
Member

As this seems to be a rather popular feature I would be okay with adding it as an option as proposed. @mentalinc Thank you for working on the PR. I wasn't aware of the side-effects of the predictive back gesture flag so I guess we'll have to re-review all onBackPressed callbacks.

It is an interesting question as to what is the root, and I'd argue the tree of feeds i.e. the sidebar is the root.

In my personal opinion the tree of feeds might be the root view logically but it shouldn't be root view in the app - if you compare it to other news apps - most of them launch with the stream of news and not some sort of feed tree view where you have to select a feed first. So I think from the users perspective the root view (and the most important view) is the stream. The sidebar is a feature that not everyone uses (e.g. I barely use the sidebar at all - and I'm sure there are more people like me out there).

IMHO as it was already said the default option should be disabled to be consistent with the behavior of other apps (and e.g. not everyone uses the sidebar at all). It's always interesting to see what different features users use in the app.

@flesser
Copy link

flesser commented Oct 14, 2023

To give a different user perspective: I almost never use the combined stream and rely heavily on the sidebar to select the feeds I want to read right now.
The reason is that I have some RSS feeds of general (IT) news outlets like Heise that sometimes publish >100 articles a day which I do a quick superfluous scroll through sometimes. On the other hand I have several "low frequency but high interest" RSS feeds where I don't want to miss a single entry, but it may take weeks for them to publish something new.
So the combined stream of all feeds is nearly useless for me (too crowded, too high risk to accidentally miss one of the "important" articles) and I use the app mostly by reading my articles one feed (or group) at a time using the sidebar.
For this kind of usage, the sidebar clearly ist the logical root and new behavior of the app suddenly closing when swiping back is breaking the flow.

@David-Development
Copy link
Member

@flesser Thank you for the explanation. From what I'm hearing it sounds like a different feature that you might want. Just an idea that I'm throwing out here: If single feeds are so important to you - it could also be an option that we could add some kind of "importance" to feeds so that in the combined stream the articles would always appear first. It would break the idea of the stream being strictly sorted by date but that's just an idea (as I also saw a similar thing in the Google News Stream earlier today - like grouping different news from one feed together). Maybe you guys can give thumbs up/downs if you think this could be a great/bad idea. If at least a few people think that this could be a good idea we can open a new issue and discuss the details there.

@mentalinc
Copy link
Contributor Author

Good news, it looks like I've got it all working now (way harder than I was expecting it to be when I started on this). I was expecting to spend 30 mins setting up the preference and placing the deleted code into an if statement. Instead I've learned all about the deprecation of onBackPressed() and the new predictive back gestures.

Changes I've made are here:
1e16613

There is a setting to enable or disable this behaviour.

I've worked on this mainly as I use the feed to read based on the folders I have setup or specific feeds within the folders.
I don't use the main unread feed that is the default when the app is opened.

This is the first time contributing, so not sure what to do next, as I've tested it on my device and seems to work fine.

All the other places where onBackPressed() is used will still need to be checked to confirm it works as it was intended to.

@flesser
Copy link

flesser commented Oct 15, 2023

@David-Development No, this does not sound like something I would use. Hm, how to explain? The "importance" of a feed is nothing I would be able to configure statically. It varies use by use what kind of topics I'm interested to read about right now and in which order when I open the app. Sometimes also the number of available unread articles shown in the sidebar determines what I read first if I don't have much time and want to "get the chore done" of clearing at least one feed.

Also, I really like to read/scroll through my feeds isolated by topic. Especially those where I mostly just scan the headlines and only open interesting articles are much easier to process if I know they are all from the same context and not a mix of e.g. IT News and baking recipes.

To;Dr: the feature I need is already there (overview of all groups and feeds, ability to filter unread articles by group or feed). Only the way to access it (open the sidebar) changed with this release in a way that breaks the navigation flow from individual article back to root view ((Browser : swipe back to close) -> Article view : swipe back -> Feed/Group view : swipe back -> Overview of all feeds (sidebar))

I don't really care if the feed overview is in a sidebar or not, so if adhering UI guidelines is important, it may be moved to some other kind of container or view as well.

@maurerle
Copy link

From my point of view the main problem is in Android - I can not swipe from the left to the right on my phone to open the drawer on various apps since the switch to app gestures..

Searching the internet turned out that there are two tricks:

  • When you want to open an app's menu drawer, swipe in downward from the left side of the screen at a 45-degree angle - to open the menu drawer
  • You can swipe in from the left side of the screen with two fingers together to open the app menu drawer

(https://www.computerworld.com/article/3439060/android-gestures.html)

The first trick does not work well for me - so I can not use it reliably.
I too wish to get this functionality back in news-android - but I see the fault much more at android. Maybe I will get used to it someday - maybe this helps other people too.

@mentalinc
Copy link
Contributor Author

Agree, its a very new way to learn how to use apps, compound where apps have elected to use swipe left and right as a feature (mark unread, star etc) and gets even more complicated.
You then add in phone cases that are raised at the edge of the phone and being able to physically reach easily to trigger the swipe from the edge gets harder still.

@Bruno-FGM
Copy link

If I may, from my own usage experience (which is specific to me), also when I click on a news, I open the browser, then stepping back to News from that, I need to do back sometime a few times and if one too many I leave the app... and I need to reopen.
Also getting to the sidebar, either I need to go to the top left sandwich icon which is very far with my right hand holding the phone or switch from the side, but it is a edge phone and regularly it is not so simple from right hand to do that properly.
So 2 problems here for me:
1/ leaving too easily and talking of widespread option, many apps propose to leave only on double back and not single one.
2/ Getting to the sidebar right handed, there is no easy solution...
As explained by other people above, I do not have a linear reading.
So I grouped feeds by topics, and in fact going from one topics to the other, so going to sidebar to select next topic after processing one... very useful and tidy. At least for me

So opening sidebar on back was solving those 2 pbms, or I should say, removing that option created those 2 pbms...
To finish, using the app quite heavily; thx a lot for people giving they time...

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

Successfully merging a pull request may close this issue.

10 participants