Closed
Bug 1303929
Opened 9 years ago
Closed 5 years ago
Reset of Default Apps not possible with Firefox on Android
Categories
(Firefox for Android Graveyard :: Settings and Preferences, defect, P3)
Tracking
(fennec+)
RESOLVED
INCOMPLETE
Tracking | Status | |
---|---|---|
fennec | + | --- |
People
(Reporter: michaelof, Unassigned)
References
Details
Attachments
(2 files)
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:48.0) Gecko/20100101 Firefox/48.0
Build ID: 20160818000000
Firefox for Android
Steps to reproduce:
When downloading an e.g. PNG file within Firefox on Android (4.4.2 / kitkat in my case) , e.g. from owncloud, Firefox offers a dialogue "complete action using" where a user can select the app for the download.
If the user presses "always" erroneously, there's *** NO *** documented way how to reset this, and *** ALL *** Android default mechanism DO NOT WORK / ARE NOT APPLICABLE
Actual results:
Erroneously selected app will stay forever as default.
- Clearing Android's default settings for affected apps doesn't change anything
- Resetting Default Settings for ALL Apps in Android's "Apps Manager" doesn't change anything.
As I erroneously selected "Gallery" as default app für "PNG", no download and open is possible as the Gallery stock app seems to expect a local file, not a download location, app hangs (on jpeg) or "Couldn't find item" for PNG.
As this is not acceptable, I finally tried "the hard way" and deleted via Android's app manager all cache and all data for app "Firefox".
Which "solves" the problem, but also
- deleted all my bookmarks
- my password store
As I'm using Firefox from the beginning on Windows/LINUX and from beginning also on Android, so even on mobile for years now, I really *** HATE *** this bug, as I've stored a lot of logins in my password store :-S
Because by deleting all Firefox files solved the problem, it seems so that Firefox completely "ignores" Android's way of dealing with default apps. Drilling down into this idea, I've started to search in about:config and easily found "browser.download.preferred.image/png" set to "com.android.gallery3d".
Resetting this option also solves the problem.... :(
Expected results:
As this is a very, very annoying "pain in the neck" bug, it should be fixed if possible
Looking at https://bugzilla.mozilla.org/show_bug.cgi?id=927949 I'm not sure if this might be the same bug, open since 2013
Now found also https://support.mozilla.org/de/questions/985982, where other users are complaining their "grief" about this bug.
ONE SMALL CHANGE would help a lot:
- Usual Android dialogues for selecting an app default, at least on 4.4.2/kitkat, show "ALWAYS" on the left, and "JUST ONCE" on the right.
- Firefox asks in "Complete action using" shows "ALWAYS" on the RIGHT, and "JUST ONCE" on the LEFT.
It would be a ******* GREAT ******* idea to be at least with this left/right location aligned to Android :-S
Component: Untriaged → Settings and Preferences
Product: Firefox → Firefox for Android
Comment 1•9 years ago
|
||
This is an OS dialog. We don't have any control over how it is displayed.
Status: UNCONFIRMED → RESOLVED
Closed: 9 years ago
Resolution: --- → INVALID
Hi Kevin,
just some more question, for my understanding:
I've appended two screenshots.
One shows the usual Android, when you are passing information from one app to another, if no "always" app is defined: AndroidStandardIntentDialogue.png
Action was opening an PNG file from AOSP file manager.
This dialogue has "Always" on the lower LEFT corner. As you can see, I've installed "Intent Interceptor", which shows, that this is an OS based intent, captured by "Intent Interceptor".
The second screenshot shows the dialogue, when you click on a PNG link in a website, within Firefox. This dialogue is only shown, if "browser.download.preferred.image/png" is NOT set. FirefoxDialogue.png
This dialogue, an this is more than inappropriate, does not follow the Android standard and shows the "Always" on the lower RIGHT corner, leading to many unwanted clicks an always, where a dumb user than me expects the "Only Once", as usual.
As this dialogue is NOT captured by "Intent Interceptor", you see than there's no option for "Intent Interceptor" as target, it made me believe that this is a pure firefox "internal" dialogue. Especially, as this dialogue is NOT shown in Android's own/standard browser.
You are now saying that this is an OS dialogue, no control, even not about the left/right position of the options?
Hard to believe, could you link me to the code line, if not to time-consuming? I'm not a deeply skilled developer, but I really want to see this.
Thank in advance,
Michael
Status: RESOLVED → UNCONFIRMED
Resolution: INVALID → ---
Comment 5•9 years ago
|
||
Correct, this is Firefox's own dialogue.
As a workaround, since Firefox 49 it is possible to just tap twice on an app icon instead of selecting "Just once". The bug where that was implemented (bug 1270543) should also give you a few pointers to the relevant files.
Looking at the SUMO question you linked to, a less radical solution than clearing all app data for Firefox should be to open about:config, search for preferences starting with "browser.download.preferred" and then to delete only those.
Nevertheless,
a) matching the default Android arrangement of the buttons and
b) providing an easier way to clear those app associations wouldn't be a bad idea.
Status: UNCONFIRMED → NEW
Ever confirmed: true
(In reply to Jan Henning [:JanH] from comment #5)
> Correct, this is Firefox's own dialogue.
> As a workaround, since Firefox 49 it is possible to just tap twice on an app
> icon instead of selecting "Just once". The bug where that was implemented
> (bug 1270543) should also give you a few pointers to the relevant files.
>
Thank you very much, very interesting !!!
> Looking at the SUMO question you linked to, a less radical solution than
> clearing all app data for Firefox should be to open about:config, search for
> preferences starting with "browser.download.preferred" and then to delete
> only those.
>
Jan, *** NOW *** I know already that changing the "browser.download.preferred" settings would have solved my issue pretty easily. BUT I'm 100% sure that I'm not the only one searching for an Android / OS option to "reset" the intent handling at first, exactly because the dialogue looks very similar to the original Android one.
So the reason for opening this bug is not to solve my problem, which as said is solved already, but preventing other Firefox mobile users from this painful pitfall.
> Nevertheless,
> a) matching the default Android arrangement of the buttons and
> b) providing an easier way to clear those app associations wouldn't be a bad
> idea.
Do you know Who must be "convinced" to get the buttons changed/relocated?
Updated•9 years ago
|
tracking-fennec: --- → ?
Comment 7•9 years ago
|
||
Maybe related to bug 1320889
Comment 8•9 years ago
|
||
per discussion on Dec14, fennec team would tracking-fennec+ this bug. (I currently don't have permission to + it yet).
note: it would be great to have UX input on the expected behavior.
Comment 9•9 years ago
|
||
If Firefox is going to have its own preferences, I humbly suggest that the dialog needs to look LESS like the Android dialog, to avoid the scenario Michael outlines where a user erroneously resets the OS associations.
Comment 10•9 years ago
|
||
calling out to UX for expected behavior, per comment 8.
Flags: needinfo?(jalin)
Flags: needinfo?(alam)
Comment 11•9 years ago
|
||
ni Joe for considering alternative solution to improve the overall experience
tracking-fennec: ? → +
Flags: needinfo?(jcheng)
Comment 12•9 years ago
|
||
referencing Chrome implementation, Chrome downloads directly and leave the opening of the downloaded file later to the system (once the download is complete)
this might be the easier path forward for Firefox as well. what Firefox is currently doing seems to be handling what user wants to open the downloaded file with after the download is complete and it seems to be unnecessary. If Firefox downloads directly and once the file download is complete, user is presented with an option to open the file and from there the system will handle it.
let's have UX to chime in on this
Flags: needinfo?(jcheng)
Comment 13•9 years ago
|
||
(In reply to Joe Cheng [:jcheng] from comment #12)
> what Firefox is
> currently doing seems to be handling what user wants to open the downloaded
> file with after the download is complete and it seems to be unnecessary. If
> Firefox downloads directly and once the file download is complete, user is
> presented with an option to open the file and from there the system will
> handle it.
Not correct. The app chooser displayed by Firefox only shows apps that advertise themselves as being capable of handling the file download all by themselves. This means that if a user chooses an external app from that dialogue, we hand off the download to that app *completely*.
One good example is playback of media files that aren't supported in Firefox:
Currently, if the user has a media player installed that supports playing files directly from the internet, the user can select it from Firefox's download app chooser. In that case Firefox just hands the link over to that app, which can then e.g. stream the file and start playback immediately.
With this proposed behaviour on the other hand, the user would have to wait for the whole file to download in Firefox before being presented with the choice of which media player to use (or the default app launching automatically).
Comment 14•9 years ago
|
||
(In reply to Michael from comment #0)
> If the user presses "always" erroneously, there's *** NO *** documented way
> how to reset this, and *** ALL *** Android default mechanism DO NOT WORK /
> ARE NOT APPLICABLE
If you want to reset the selection, go to Settings > Apps > Scroll over to "All" > Menu button at the top right (3 dots) > Reset app preferences. But this action will reset all, it's like system level reset.
Just an idea, maybe we can add a setting like "Reset app preferences" on the menu, it's only for Firefox, so Firefox users can reselect the app which they want to use.
>- Usual Android dialogues for selecting an app default, at least on 4.4.2/kitkat, show "ALWAYS" on the >left, and "JUST ONCE" on the right.
>- Firefox asks in "Complete action using" shows "ALWAYS" on the RIGHT, and "JUST ONCE" on the LEFT.
>It would be a ******* GREAT ******* idea to be at least with this left/right location aligned to Android >:-S
Refer to Android 6 and newer, the dialog shows "ALWAYS" on the RIGHT, and "JUST ONCE" on the LEFT.
So is it possible for Firefox to align to Android different version? I think if we use system dialog, it should align.
Flags: needinfo?(jalin)
Comment 15•9 years ago
|
||
(In reply to Jack Lin[:jacklin] from comment #14)
> (In reply to Michael from comment #0)
> > If the user presses "always" erroneously, there's *** NO *** documented way
> > how to reset this, and *** ALL *** Android default mechanism DO NOT WORK /
> > ARE NOT APPLICABLE
>
> If you want to reset the selection, go to Settings > Apps > Scroll over to
> "All" > Menu button at the top right (3 dots) > Reset app preferences. But
> this action will reset all, it's like system level reset.
> Just an idea, maybe we can add a setting like "Reset app preferences" on the
> menu, it's only for Firefox, so Firefox users can reselect the app which
> they want to use.
This is not about Android's app preferences and the system app chooser and as I said above, this is also not about simply mimicking the result of a simple ACTION_VIEW intent for opening the file using our own dialogue.
What happens is that when starting a download, we effectively ask Android whether any other app offers to *download* (or otherwise directly open) that file, *without* us having to download it first. If no other app is found, we just start the download ourselves, otherwise we present our own download app chooser. If the user then chooses an external app from it (e.g. a media player that can play files directly from the internet), we effectively just pass the URI to that app and stop any further handling of that download. Because this is a Firefox dialogue, the default app preferences there are naturally handled by Firefox itself, and what this bug is about is that currently there is no way of resetting those preferences short of manually going into about:config.
For further details, please look at https://dxr.mozilla.org/mozilla-central/source/mobile/android/components/HelperAppDialog.js
> >- Usual Android dialogues for selecting an app default, at least on 4.4.2/kitkat, show "ALWAYS" on the >left, and "JUST ONCE" on the right.
> >- Firefox asks in "Complete action using" shows "ALWAYS" on the RIGHT, and "JUST ONCE" on the LEFT.
> >It would be a ******* GREAT ******* idea to be at least with this left/right location aligned to Android >:-S
>
> Refer to Android 6 and newer, the dialog shows "ALWAYS" on the RIGHT, and
> "JUST ONCE" on the LEFT.
> So is it possible for Firefox to align to Android different version? I think
> if we use system dialog, it should align.
That part of this bug has already been split out to bug 1305027.
Comment 16•9 years ago
|
||
(In reply to Jan Henning [:JanH] from comment #13)
> (In reply to Joe Cheng [:jcheng] from comment #12)
> > what Firefox is
> > currently doing seems to be handling what user wants to open the downloaded
> > file with after the download is complete and it seems to be unnecessary. If
> > Firefox downloads directly and once the file download is complete, user is
> > presented with an option to open the file and from there the system will
> > handle it.
>
> Not correct. The app chooser displayed by Firefox only shows apps that
> advertise themselves as being capable of handling the file download all by
> themselves. This means that if a user chooses an external app from that
> dialogue, we hand off the download to that app *completely*.
>
> One good example is playback of media files that aren't supported in Firefox:
> Currently, if the user has a media player installed that supports playing
> files directly from the internet, the user can select it from Firefox's
> download app chooser. In that case Firefox just hands the link over to that
> app, which can then e.g. stream the file and start playback immediately.
> With this proposed behaviour on the other hand, the user would have to wait
> for the whole file to download in Firefox before being presented with the
> choice of which media player to use (or the default app launching
> automatically).
thanks for the additional explanation on how things actually work from a technical perspective. what I was describing was merely an observation from an end user's point of view. it doesn't look like we have telemetry to help us understand how often this dialog shows up and how often do users select other apps versus firefox downloader. Hopefully we can come to an agreement by considering the best user experience for most users, though this may mean some trade-offs we make between ease of use versus advanced functionalities.
Comment 17•9 years ago
|
||
Perhaps the best solution is to give the Firefox downloaded an intent filter:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<data android:scheme="http" />
<data android:scheme="https" />
<data android:mimeType=”*/*” />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
Then, you can hand the selection off to the system dialog, and allow the system to hand it back if the user wants to download it.
Comment 18•9 years ago
|
||
There's at least one complication with that which makes that solution not quite as straightforward:
Firefox needs to be notified not only if the user simply wants to download the file, but also if some other app is chosen or the dialogue simply cancelled. This is because when downloading a file, Gecko already starts doing a speculative download to a temp file (*.part) in the background. So if the user then chooses a different app or just exits the dialogue, we need to abort this download and remove the temp file.
Android however supports getting the chosen app from a simple Intent Chooser dialogue (but I think still no direct notice if the dialogue was simply cancelled) only on 5.1+.
Comment 19•9 years ago
|
||
Sounds like Jack has identified the issue.
Kind warning: beware of scope creep here :)
Clearing my NI for now.
Flags: needinfo?(alam)
Comment 20•9 years ago
|
||
Yeah, that's difficult.
Probably best to put together a ui for modifying Firefox's preferences, but then ensure that the Firefox resolver dialog is more obviously part of Firefox so that the user knows where to go to change the settings. Maybe put the Firefox logo in the titlebar, and provide a link to the preference ui.
Comment 21•9 years ago
|
||
@Joe,
Do we have Telemetry data to see how many users use 3-party downloader & Firefox downloader to download files? We would like to know general users' preferences so we can determine if we still show the "downloader" intent dialog or we can remove it.
Thank you
Jack
Flags: needinfo?(jcheng)
Comment 22•8 years ago
|
||
I filed a bug 1336923 to help us better understand the usage of this feature
Depends on: 1336923
Flags: needinfo?(jcheng)
Comment 23•8 years ago
|
||
backlog this as P3 since the dependent bug 1336923 is still in p2
Priority: -- → P3
Comment 24•8 years ago
|
||
Since bug 1320889 has landed, I can't reproduce this bug. Please help us verify on nightly and see if this still happens. Thank you!
Flags: needinfo?(michaelof)
Priority: P3 → --
Updated•8 years ago
|
Assignee: nobody → cnevinchen
Comment 26•8 years ago
|
||
Hi Michael
Could you please help verify if the bug is still valid?
I can't reproduce it at my end using Nexus 5 (Andrid 5 & 6)
Comment 27•8 years ago
|
||
If you have difficulties finding any download that triggers the helper app dialogue,
1. Install VLC.
2. Try this file: https://hg.mozilla.org/mozilla-central/raw-file/981da978f1f686ad024fa958c9d27d2f8acc5ad0/devtools/client/themes/audio/shutter.wav
Then, choose any option you want, click on "Always" and try finding a way of resetting that choice that doesn't involve about:config or the nuclear option of clearing Firefox's app data.
Flags: needinfo?(michaelof)
Comment 28•8 years ago
|
||
Hi Jan
Thanks for the clear STR!
I'll un-assign myself since I have other stuff in my bucket.
Hi Wesley.
Please feel free to add this to backlog at the triage meeting.
Assignee: cnevinchen → nobody
Flags: needinfo?(whuang)
Reporter | ||
Comment 29•8 years ago
|
||
(In reply to Nevin Chen [:nechen] from comment #26)
> Hi Michael
> Could you please help verify if the bug is still valid?
Hi Kevin,
I can confirm that with Android 4.4.2 and Firefox 53.0.2 the Dialogue now shows the "always"/"once" options now in the same way than the Android intent dialogues do.
Cool, thanks to all of you who solved this !!!
Regards,
Michael
Updated•8 years ago
|
Flags: needinfo?(whuang)
Comment 30•8 years ago
|
||
Per comment 29.
Status: NEW → RESOLVED
Closed: 9 years ago → 8 years ago
Resolution: --- → WORKSFORME
Comment 31•8 years ago
|
||
Comment 29 was probably rather meant for bug 1305027.
Status: RESOLVED → REOPENED
Resolution: WORKSFORME → ---
Comment 32•8 years ago
|
||
Regarding bug 1384811, note that we we still start a speculative download even with the helper app dialogue being shown.
Comment 33•5 years ago
|
||
We have completed our launch of our new Firefox on Android. The development of the new versions use GitHub for issue tracking. If the bug report still reproduces in a current version of [Firefox on Android nightly](https://play.google.com/store/apps/details?id=org.mozilla.fenix) an issue can be reported at the [Fenix GitHub project](https://github.com/mozilla-mobile/fenix/). If you want to discuss your report please use [Mozilla's chat](https://wiki.mozilla.org/Matrix#Connect_to_Matrix) server https://chat.mozilla.org and join the [#fenix](https://chat.mozilla.org/#/room/#fenix:mozilla.org) channel.
Status: REOPENED → RESOLVED
Closed: 8 years ago → 5 years ago
Resolution: --- → INCOMPLETE
Updated•5 years ago
|
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•