cs2103aug2014-f11-1j / TaskCommander

Desktop to-do app written in Java. Developed by @michelletan, @andi677, @java-wei, and @seansaito.
0 stars 1 forks source link

Discussion: Requirements from Google Integration for login with browser in UI #93

Closed michelletan closed 9 years ago

michelletan commented 9 years ago

Current situation: Google Sync requires Google login, which is currently implemented in a tedious way.

  1. Copy-paste an authorisation URL into a separate browser.
  2. Login to Google and get an authorisation code- paste the code back into System input.

New proposed flow:

  1. Sync command called.
  2. Google Sync component returns the authorisation URL as a String to the UI.
  3. UI opens a browser tab and waits for user to enter authorisation code into an input field [UI is unable to parse the authorisation code from the HTML page itself....]
  4. UI closes the browser tab and sends the authorisation code back to Google Sync <again, is Controller involved here?>
  5. UI receives the normal feedback from Controller, a String message and updates the table of tasks

Implementation so far: Currently, the UI is prepared to launch a browser tab within the application once a signal is given, and is almost prepared for steps 2-4. However, agreement is needed for the rest of the flow from Controller and Google Sync components.

Please post your comments and opinions of

seansaito commented 9 years ago

Hey Michelle,

Yes, this is what we discussed earlier. While this is the more efficient solution than what we have now, I feel it is still tedious, for the most cumbersome part, which is copying and pasting the authorization code back into the input field.

How do other applications that use the Google Calendar API approach this issue? For example, using Wunderlist, I never had to go through this step in syncing with my Google calendar.

michelletan commented 9 years ago

I realised that I can actually get the authorisation code from the title bar hmmm... I'll experiment with it and see if I can implement it.

michelletan commented 9 years ago

So all the user would have to do is login and accept permissions for our app. After that, the browser tab should close and the app should sync the tasks.

seansaito commented 9 years ago

Sounds good.