STR: 1. Trigger the "import contacts from gmail" UI (open contacts app, tap the gear, tap "import contacts", tap "gmail") 2. Enter your username and password. 3. Inspect the Google "request for permissions" page that appears. ACTUAL RESULTS: The only visible button on the page is a "Cancel" button. No Accept/OK button. (But, if you pan the page to the right, you'll find that there's an "Accept" button just offscreen.) EXPECTED RESULTS: Accept button should be visible, for less user confusion & more-likely-to-be-successful contact importing. Not sure where this bug belongs (or what exact the URL of the permissions page is), but starting it out in Contacts, since that's the Gaia app involved here. * I can reproduce this on my Flame device, on "188.8.131.52-prerelease". * I can also reproduce on the simulator for Firefox OS 2.0. (started from desktop Firefox.)
Created attachment 8451281 [details] screenshot of Google "Request for Permissions" page, w/ no accept button visible
Created attachment 8451282 [details] screenshot of same page, after panning the screen slightly (revealing the hidden "accept" button)
Unfortunately there is nothing we can do here since it's a page owned by google. Do we have a way to contact them to try to fix this?
FWIW, this can be reproduced in Firefox Desktop and Chrome Desktop, with a demo site like e.g.: http://demo.phpgang.com/google_login_oauth/index.php (Make sure to click "Cancel" on the confirmation page, since you presumably don't want to give the demo access to your Google account.) With a sufficiently-small window (emulating a mobile device), the permission-granting page has its "Accept" button clipped or off-screen entirely.
FWIW, the URL of the oauth page (for the demo in comment 4) is something like: https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/userinfo.email&response_type=code&redirect_uri=http://demo.phpgang.com/google_login_oauth/index.php&client_id=983016676599 (You can reproduce that by visiting that URL directly, if you like.)
...and based on the gmail chunk of https://github.com/mozilla-b2g/gaia/blob/master/apps/communications/contacts/test/unit/mock_oauthflow.js I think the URI where *we're* actually hitting this problem is: https://accounts.google.com/o/oauth2/auth?scope=https://www.google.com/m8/feeds/&response_type=code&redirect_uri=https://serene-cove-3587.herokuapp.com/liveowd/oauth2_new/flow_live.html&client_id=664741361278.apps.googleusercontent.com
ni? Francisco to see if there is anything the contacts app can do Thanks
Unfortunately that page is owned by google and surprisingly is not mobile friendly totally. There is nothing that we can do in contacts as we are just doing a window.open. Regarding the url, the redirect_uri is never hit, since in FFOS we use the redirect based on manifest, so gecko detects that we are going to be redirected there but in the manifest we declare that to handle the redirection back to a document on our app: https://github.com/mozilla-b2g/gaia/blob/master/apps/communications/manifest.webapp#L151
Apparently Google uses user agent string to detect a mobile, as stated here: http://stackoverflow.com/questions/8982482/can-i-get-googles-oauth2-to-display-a-mobile-friendly-approval-page I don't know what it sniffs, but indeed if I change my UA to an android one, Google sends a page that fits on my mobile screen.
cc Karl, who I think has already contacted Google about this or a similar issue.
Marking as a dupe of 980635. Karl has reached out to Google about this.