Closed Bug 790954 Opened 12 years ago Closed 3 years ago

Always Request Desktop Mode

Categories

(Firefox for Android Graveyard :: General, enhancement)

ARM
Android
enhancement
Not set
normal

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: tdowner, Unassigned)

References

Details

(Whiteboard: [SUMO])

Attachments

(1 file)

One of the most common Feature Requests on google Play now that 15 is out is the ability to "Always Request Desktop version" of a website. Basically a pref that once toggled, defaulted to the "Desktop Mode" until toggled off. It's a small thing, but many users on Google play want it.
I think Brian has an add-on to do this. If so, and it fills the need, perhaps we should get it "promoted" and "recommended".
Mark - I know how much of a fan of this feature you are, so I presume you're referring to promoting this add-on instead of making this a customised option in the menu? Is this down to the functionality of this feature or making our menu list far too long?

Ian - I'm wondering that what with the menu settings structure, that this could now more easily be placed in one of the sub-menus as an option? I wasn't keen on this before when we had one super-long menu, but now that we have some more structure?

I just keep seeing this pop up pretty much every week from our user feedback channel, and I am under the impression it's around the creation of a global setting (and not really *how* it functions or displays).
I like the idea of promoting the add-on, if for no other reason than that I would love to see add-ons get more attention in general on Android. 

In terms of baking this into the app, I worry a bit about adding another menu item. Placing "Request desktop site" on level 1, and then "Always request desktop site" (or some other wording) inside Tools feels a little disconnected. 

It strikes me that if people want this, it might make sense to create a global setting so that whenever they enable "Request Desktop Site", Firefox remembers that choice for that site forever, until they turn it off manually. 

Given that, I would be more inclined to place it in Settings under Content. Perhaps it could read

*Request desktop site*
- Forget sites after session
- Always remember sites

---

I am wide open on wording suggestions, but you get the idea.
(In reply to Ian Barlow (:ibarlow) from comment #4)
> It strikes me that if people want this, it might make sense to create a
> global setting so that whenever they enable "Request Desktop Site", Firefox
> remembers that choice for that site forever, until they turn it off
> manually. 
> 
> Given that, I would be more inclined to place it in Settings under Content.
> Perhaps it could read
> 
> *Request desktop site*
> - Forget sites after session
> - Always remember sites

Having "Request Desktop Site" be per-site was what we originally wanted and tried, but due to some technical problems handling redirections, we had to make it tab-based. That is, if you enable "Request Desktop Site" on site X, then navigate to site Y, you'll still be in desktop mode.
If we decide to implement this feature, I'd prefer to make it a global setting, not per-site or per-tab.

Enabling the setting would hide the "Request Desktop Site" menu item as well, since all tabs and sites would be using the desktop UA.
I also think we should consider this feature only on devices with large screens.
(In reply to Mark Finkle (:mfinkle) from comment #7)
> If we decide to implement this feature, I'd prefer to make it a global
> setting, not per-site or per-tab.
> 
> Enabling the setting would hide the "Request Desktop Site" menu item as
> well, since all tabs and sites would be using the desktop UA.

That makes sense to me.
(In reply to Mark Finkle (:mfinkle) from comment #7)
> Enabling the setting would hide the "Request Desktop Site" menu item as
> well, since all tabs and sites would be using the desktop UA.

We might still want to show it - it could just be checked by default. This would allow users to switch from desktop->mobile in certain cases where they don't want a desktop UA (basically, the opposite of what we have now).
Talking this through, I'm reading 'global' as to mean that a user's browsing session (or per-tab session) would be assumed to want to be using 'request desktop site' mode. Which I don't think would or should be the intention...

Because we know some sites work better on mobile than others, and our first instance would be to try displaying the best possible experience to the user (which wouldn't necessarily be the desktop site). But for those users who WANT the desktop site, I would think it would be because they want to read THAT site in desktop mode - their conscious decision would be made for that domain.

I don't think their conscious decision would have automatically assumed for their whole browsing session, i.e. multiple sites / domains.

Therefore my feeling is that we would want to remember someone's 'request desktop' preference for that domain as an option (and keep the check box available so they can switch back to mobile if they so wish).

Can the technical problems referred to Brian's Comment 6 be overcome?
When I say "global" I mean we set the Gecko UA using the global preference and the entire application is using the same desktop UA.
(In reply to Mark Finkle (:mfinkle) from comment #12)
> When I say "global" I mean we set the Gecko UA using the global preference
> and the entire application is using the same desktop UA.

Basically what Phony does.
I tend to agree with Karen here. I could see a case where people may want desktop New York Times, but then in the same window they might go to Twitter and expect the mobile experience there. 

Can we simply (for some definition of simply) adjust the behaviour of Request Desktop Site such that it always remember domains for which it has been turned on?
So here's the redirection issue:

There's many sites out there that redirect for mobile devices. For instance, going to http://www.dailyshow.com/ will take you to http://m.comedycentral.com/. If you then set "Request Desktop Site", and the setting is set per-site rather than per-tab, your setting will be associated with the m.comedycentral.com domain.

Problem is, using a desktop UA on sites like http://m.comedycentral.com/ still shows a mobile version of the page (you can verify this easily by clicking the link in desktop Firefox). The setting has been associated with m.comedycentral.com, *not* dailyshow.com. So the next time you go to http://www.dailyshow.com on your phone, it still sees the mobile UA, and it will still redirect you to http://m.comedycentral.com. You'll then be at http://m.comedycentral.com with a desktop UA (because of your setting), but it's still a mobile site.

The only way to get around being redirected to the mobile site is to have dailyshow.com see the desktop UA. Instead of "Request Desktop Site" being associated with the post-redirected URL, we could say the option should stick to the pre-redirected URL. That would prevent the redirect from happening in the first place, and that would fix this case.

But then say you're on Google, and you search "mozilla". Clicking the first link doesn't take you directly to http://www.mozilla.org/; instead, Google gives you something like this: http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&ved=0CEUQFjAA&url=http%3A%2F%2Fwww.mozilla.org%2F&ei=Fai3UNk54q-KAvSogIgL&usg=AFQjCNEYypZL90rpQY8ftwZcjS1wSxGdsA&sig2=qUobvHrAvirH46xnbz1AVQ (used for tracking clicks). That URL then redirects you to http://www.mozilla.org/. So if our new algorithm is to use the pre-redirected URL (for reasons described above), setting "Request Desktop Site" here would associate the setting with google.com instead of mozilla.org - and we certainly don't want that.

Even if we came up with a reasonable solution to this redirection problem, we run into other barriers - like iframes. iframes can be sourced to domains different from their parents, so having desktop sites be per-domain could cause a mish mash of desktop/mobile pages.

Chrome and the stock browser (and other Android browsers) also use the tab-based approach. I agree that having "Request Desktop Site" be per-site is the most intuitive, so I imagine these other browsers would have implemented it this way if possible. I'm sure they use a per-tab implementation for the same reasons.
Please read and absorb comment 15. It is too error prone to support an "always use desktop site" mode for per-domain. Gecko does not really support a per-tab solution, which is why the current "Request desktop site" feature has some bugs.

The only way we could really support an "Always use desktop site" feature is by enabling it for the entire application, like Phony (the add-on) does when you install it.

Assumption: This bug is only about devices with a decent sized screen (mostly tablets). I can understand the desire to _not_ see phone-optimized webpages on a tablet. This feature would allow users to avoid that situation.
(In reply to Mark Finkle (:mfinkle) from comment #16)
> Assumption: This bug is only about devices with a decent sized screen
> (mostly tablets). I can understand the desire to _not_ see phone-optimized
> webpages on a tablet. This feature would allow users to avoid that situation.

I think a global setting seems reasonable in terms of that assumption, that this is a solution for devices with larger screens. 

However, I think we need to consider the case for people on phones on smaller screens who simply prefer desktop site experiences, *even if there is a mobile equivalent* available. Whether it's because the desktop site has more content or functionality available than the mobile site, or if it is simply more familiar to them, or whatever. Even I will often switch over to a desktop version of a site (like nytimes.com) on my phone because it just works better for me.  

I understand the technical limitations that are laid out above, but I still think that most people aren't looking at the Request Desktop Site option as a global or per tab feature, and rather they see it as a "I just want to switch the site I am on right now."
An option to make it and save it site specific would be great (popup question similar to the one which asks for location access) because I know a few sites which offer a tablet optimised view which I don't want to open in desktop mode but for another few sites I want to open them always in desktop mode instead of phone mode.
Ian,

The redirect/mobile-site-is-broken issue is substantial, though, and currently FF provides n way to work around it.  For example, currently m.sfgate.com is broken.  If I attempt to access www.sfgate.com on my tablet, I get redirected to m.sfgate.com.  At that point, pressing "request desktop site" does me no good whatsoever because I'm already on m.sfgate.com.

This is a far-from uncommon experience; many site hosts use redirects for their mobile sites, and many fail to maintain those mobile sites properly.  With the way "request desktop site" works currently on FF, there is no workaround except through editing about:config.

This means that *even for phones* we need a way to set a user-session-level "always request desktop site".  Preserving settings for specific sites isn't good enough.
But site specific would be great so you could specify that www.sfgate.com should always be visited in desktop mode automatically would solve your issue, wouldn't it?
Frederik,

Well, to do that site-specific couldn't operate via the current menu item.   That is, there would need to be a way to enter the site *before* you get to it, or the redirect would mess you up.
Attached image DesktopView_Mockup.png
(In reply to Karen Rudnitski [:kar] from comment #11)
> (which wouldn't necessarily be the desktop site). But for those users who
> WANT the desktop site, I would think it would be because they want to read
> THAT site in desktop mode - their conscious decision would be made for that

In most US mobile websites, iPhone traffic is still the majority.
Hence mobile websites probably designed mainly for smaller phones.
But most Android phones are now coming with 4.5 to 5 inch 
1080p display, in that case I believe users will prefer desktop mode.

In my case I prefer desktop mode always, 
Only time I really need a mobile specific site is when the site is 
serving video in HTML 5 for android and in Flash for PC.

> Can the technical problems referred to Brian's Comment 6 be overcome?

yes

(In reply to Brian Nicholson (:bnicholson) from comment #15)
> So here's the redirection issue:

redirection issue can be easily overcome see Use Case below,
For IFRAME issue, I think we need to flow settings for 
the domain of top level window.


Use Case 
=========
(assuming www.dailyshow.com will forward to m.comedycentral.com 
at the time of writing it is not doing so)

1. User go to https://www.google.com/
2. search "daily show"
3. Find http://www.dailyshow.com/ 
   (now I see www.thedailyshow.com instead)
4. Click http://www.dailyshow.com/ 
5. User lands at http://m.comedycentral.com/
   after all the redirection. 
6. User select "Request Desktop Site" from menu.

Expected Result
* Firefox prompts user with few site visited in past from the history.
  Including the HTTP 3xx redirection ones
* If possible show screenshot of desktop view.
* Allow user to select Default/Desktop/Mobile view

See attachment DesktopView_Mockup.png

If per website setting for Desktop/Mobile view is still difficult
Please give us an option to remember last user selection for 
status of "Request Desktop Site" across restart and for new tabs.
As I understand Mozilla is planning to drop support for legacy add-ons with Firefox 57 and only support WebExtensions in the future. Unfortunately this will also make the add-on "Desktop by Default" stop working.

Luckily changing the user agent seems to be still possible with WebExtensions. Although from what I understand this might not be enough to replace the functionality of "Request Desktop Mode".

Under these circumstances I hope you can reconsider your decision. Please give the user the ability to always "Request Desktop Mode" with a (global / permanent) setting in the menus or in about:config.

Another solution might be to make "Request Desktop Mode" accessible for WebExtensions.

Is there any progress on this? I am still baffled there isn't a global option to always show desktop version of pages no matter in which tab or window a page is requested. The mobile version of Brave browser does this and it works excellently. I know very few people who actually like these one-column mobile pages. Many people prefer real desktop versions of pages where it's possible to get an overview and then zoom in on the content you want immediately while being able to see large amounts of content instead of just a few sentences at a time. This, and the ability to tweak and move around things in the UI a bit (browsing bar on the bottom so I can reach it, for example), would definitely make me switch to Firefox on my phones!

Together with such an option it would be fantastic if the simulated screen width could be adjusted. The main goal I want to achieve is to never get any hamburger menus but instead get real horizontal menus where I can select the option I want immediately. There is a setting in about:config for this, defaulting to 980 or something, but that is too low to make sure desktop pages really display as desktop pages. A GUI option to change that would be fantastic. Otherwise a higher default value could be used.

I really hope something like this can be fixed! Thanks!

Also surprised this is still missing given over half a dozen bugs have already been raised and it keeps on being requested by countless users on Google Play. Providing a global option to invert the state of a Boolean flag doesn't seem like the end of the world, though I'm happy to be proven otherwise. Note that the extension "desktop by default" no longer exists, so unfortunately there's no proper way to work around this. Thanks for considering the feature!

FYI, I've opened a similar feature request for the new Fenix Android browser: https://github.com/mozilla-mobile/fenix/issues/7039

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: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → INCOMPLETE
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: