Code review comment for lp:~vasilev/psiphon/sprint3-610176

Revision history for this message
Adam Kruger (adam-kruger) wrote :

Robert, the data stored in the new column of the user agent table will be the link's full href.

We considered the following example to drive the design of this feature:

Some of Facebook's basic features work through Psiphon. Some, like Messages, do not. So when the user clicks on Messages in Facebook, we want to send a mobile user agent along with the request. This actually results in Facebook redirecting to m.facebook.com, and the user is now able to send messages through the m.facebook interface.

The problem at this point is that the user is now at the m.facebook.com site, and we don't want to force the user to hunt for the "Desktop version" or "Full version" link to resume their usual experience with the rest of the site. Our solution here is to provide a link on the bluebar with href="www.facebook.com". This will bring the user back to the usual facebook home screen in desktop mode.

By configuring the full href link in the custom user agent table, we are able to make a decision on a per site basis about how to bring the user back to the desktop version. We accept that this strategy may not be suitable for all websites (ie where the website uses a cookie to decide which content to send).

So the purpose of this feature is 1. to provide the user with some visual feedback indicating that they are browsing in a special compatibility mode, and 2. to provide the user with a link back to the Desktop version of the website, so they don't have to hunt for that link themselves.

To answer your second question, we do not want to store any user per-domain preferences at this time. The "Exit Compatibility Mode" feature should not override any existing Psiphon behavior. It is simply a link that we will configure for each custom user agent entry.

« Back to merge proposal