Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

P2P wellbeing sharing #82

Merged
merged 38 commits into from
Feb 1, 2021
Merged

P2P wellbeing sharing #82

merged 38 commits into from
Feb 1, 2021

Conversation

thevirtuoso1973
Copy link
Collaborator

@thevirtuoso1973 thevirtuoso1973 commented Jan 25, 2021

This is a big one. Closes #78.
The UI has some fairly nice features (imo) that I worked on such as pull-to-refresh and unread data indicators.

p2p.nudging.2.mp4

@thevirtuoso1973 thevirtuoso1973 self-assigned this Jan 25, 2021
@thevirtuoso1973 thevirtuoso1973 added this to In progress in Implementation via automation Jan 25, 2021
@thevirtuoso1973
Copy link
Collaborator Author

Also, need to do this. https://pub.dev/packages/qr_code_scanner#ios-integration

@thevirtuoso1973
Copy link
Collaborator Author

thevirtuoso1973 commented Jan 30, 2021

@saachipahwa Did you go through the intro screen? That QR code evaluates to the string "nullnull" which highly suggests that it wasn't initialized. Also, just to clarify, by QR code screen do you mean the code or the QR scanner?

@saachipahwa
Copy link
Collaborator

I think we should have a back button on the add friend page, in case they change their mind

@saachipahwa
Copy link
Collaborator

saachipahwa commented Jan 30, 2021

No, I didn't - that makes sense, I'll go through the intro screen again

Yep it works now! looks cool

i meant the code

@saachipahwa
Copy link
Collaborator

I fixed the exception by putting a container of fixed size around the qr screen, but this doesn't work for all screen sizes and using flexible didn't work so not sure

@thevirtuoso1973
Copy link
Collaborator Author

@saachipahwa Expanded might work around... something, you may have to trial and error to find the right widget to put around. I'll also investigate but I think it worked fine on android.

Also, is this the only problem remaining? And is this only in debug mode?

@saachipahwa
Copy link
Collaborator

Yep it's the only exception, everything else works

@thevirtuoso1973
Copy link
Collaborator Author

thevirtuoso1973 commented Jan 31, 2021

@saachipahwa I just pushed a hacky fix since I can't reproduce the error to solve it properly. If you have time can you try to fix it using expanded/flexible/singlechildscrollview (one of them usually work)? Otherwise its fine as long as the size looks okay on your screen.

@thevirtuoso1973
Copy link
Collaborator Author

thevirtuoso1973 commented Jan 31, 2021

@thevirtuoso1973 Note to self: this doesn't have any notification thing when user receives data. Should probably add that eventually in a future PR.

@thevirtuoso1973 thevirtuoso1973 marked this pull request as draft February 1, 2021 10:45
@thevirtuoso1973
Copy link
Collaborator Author

I may as well do it now.

@saachipahwa
Copy link
Collaborator

I may as well do it now.

Sorry, I was making an IPA all of yesterday. I can do it if you haven't already?

@thevirtuoso1973
Copy link
Collaborator Author

thevirtuoso1973 commented Feb 1, 2021

Sorry, I was making an IPA all of yesterday. I can do it if you haven't already?

No I was talking about a feature related to wellbeing sharing. What you need to do is this:

@saachipahwa I just pushed a hacky fix since I can't reproduce the error to solve it properly. If you have time can you try to fix it using expanded/flexible/singlechildscrollview (one of them usually work)? Otherwise its fine as long as the size looks okay on your screen.

@saachipahwa
Copy link
Collaborator

Oh right yep i'll do that

@thevirtuoso1973 thevirtuoso1973 marked this pull request as ready for review February 1, 2021 16:03
@saachipahwa
Copy link
Collaborator

saachipahwa commented Feb 1, 2021

I'm getting these errors when i click on the friends page:

flutter: Recieved: {"reason":"Password doesn't match expected.","success":false}
flutter: Caught error: type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'List'

flutter: Caught error: Unimplemented handling of missing static target

@thevirtuoso1973
Copy link
Collaborator Author

@saachipahwa Did you go through intro screen?

@saachipahwa
Copy link
Collaborator

Nope I didn't thats why, just realised
Reset it and didn't get the error this time

@thevirtuoso1973 thevirtuoso1973 merged commit 757bcdc into develop Feb 1, 2021
Implementation automation moved this from In progress to Done Feb 1, 2021
@thevirtuoso1973 thevirtuoso1973 deleted the p2p-wellbeing-sharing branch February 1, 2021 20:28
thevirtuoso1973 added a commit that referenced this pull request Feb 22, 2021
* sentry

* wb circle colour fix

* comments and smaller shadow blur

* theme colors in graph

* fix bug and add test

* P2P wellbeing sharing (#82)

* implement keypair generation

* implement private/public key to PEM, and fingerprint generation from public key

* fix key generation by calling encode

* POST new user to backend

* use `compute` so screen doesn't hang

* friend adding & basic outline of share UI

* fix bug with user password

* implement retrieving latest data

* fix crypto, make list better

* implement the friend_graph.dart

* implement sending data to friend

* implement seemingly working wellbeing sharing, add QR code

* use FAB instead of button

* add working refresh

* fix rendering issue with QR camera

* add stepper with working add_friend_page.dart

* change to score so it fits screen

* add sharing to QR with ShareButton

* format and clean up

* refresh automatically every 2 minutes

* fix exception with graph & refresh

* adding explicit view button

* add unread data indication

* add a TODO item

* notify user of sent success & failure

* display name instead of identifier

* attempt to integrate with iOS

* add container around QrImage to fix

* send notification when new data received

* remove unused notification

* fix bug with unread indicator not showing

* increment version

* fix qr size

Co-authored-by: saachipahwa <55795994+saachipahwa@users.noreply.github.com>

* some cleanup, notably publish_screen.dart slipped through, even though I
remember removing it from a previous conflict.

* Coach mark timing (#106)

* reducing time

* remove testing stuff

* fixing wb time

* wait longer in case exeuction is slow

* Settings page tests (#63)

* initial tests: commented out shared prefs problem

* settings page tests cleaning up

* remove db stuff

* test shared prefs by itself

* change button

* change buttons test

* comments

* current postcode and support tests

* comment

* fix for change postcode

* remove constructors

* Language changes 2 (#109)

* steps nudge

* intro language fixes

* 'friend' to 'care network'

* un-personifying app?

* removing steps specific nudge

* range change

* remove low steps function

* add to network

* init notifications and check if data is from friend

* fix multiple crypto setup, and add TODO

* use ChartTitle to add left/right axis labels

* add axes labels and split up a long string

* add deeplink and share button that sends to BASE_URL

* fix url, scaffold bug, and don't show/request camera permissions unless needed

* set initialUri back to null once handled, add enum, and update version

* fix null issue with _result

* intro pg remove and settings show scheduled notif

* small nudge page and sharing page changes

* pod

* coach mark issue

* add test for add_friend_page_test.dart, mocking DB and ScaffoldState

* fix null bug

* order the friends list

* check if user adding themselves, and write test for this

* pass wellbeing record into home to fix state

* extend ChangeNotifier and use provider for the DBs

* use provider in sharing_page.dart

* wbCheckTime

* little fixes

* pod

* set state

* past weeks to weeks

* cleanup sharing_page.dart and .gitignore

* req changes 2

* fixing home page coach mark

* reducing time but still works

* wrap provider around MaterialApp and fix tests

* fix bug with infinite loading, although I don't see why sorting didn't
work when using provider.

* 400 coach mark

* remove comment, pad left

* Usability feedback (#119)

* intro pg remove and settings show scheduled notif

* small nudge page and sharing page changes

* pod

* coach mark issue

* wbCheckTime

* little fixes

* set state

* past weeks to weeks

* req changes 2

* fixing home page coach mark

* reducing time but still works

* 400 coach mark

* remove comment, pad left

* update version

* implement Comparable and sort before display

* figma copy over and nudge notif

* base url

* center postcode caption

* Use convex bottom bar (#130)

* use convex bottom bar

* colours

Co-authored-by: saachipahwa <55795994+saachipahwa@users.noreply.github.com>

* remove old code that was left in (#126)

* Share url through contacts + SMS (#132)

* add contact_share_page.dart and display contact

* fix contact state

* implement _sendToSelected, launch the sms URI

* add comment on possible issue

* change button text

* use different separator depending on platform

* remove duplicate yaml

* try undocumented ios feature for multiple contacts

* use flutter_sms plugin

* null check on contact name and format

* add custom scheme to Info-Debug.plist

* lazy load contact avatar after initial retrieval (#139)

* Polish  (#133)

* remove old code that was left in (#126)

* small changes

* sharing page description

* remove comment

* buttons to friends widget

* change of key name, comment,

* pod

* scroll bar in intro screen

* qr code description

* button name change

* pod

* help button

* QR scanner page subtitles

* comment

* launcher icon

* settings page with sections

* settings page test fix

* fix coach mark mistake

* pod

* splash screen

* underline see here and center notif selector

* caption

* formatting settings descriptions

* network page updates

* sharing page: colours, bold words, customscroll

* remove custom scroll attempt

* splash screen longer, nw button colours

* home tutorial sized box fix

* splash screen only shows when loading

* make loadaftersplash neater

* blue i button instead of ? button

* version 1.3.0

* ios launch screen

* pod

* main logo font change -> KiteOne

* launch screen

* no more splash screen

* settings page reformat

* remove unused import

* moving wb share button

* smaller logo

* remove launch screen

* removec Future.value and print

* Add linter stuff to dev branch (#147)

* Create linter.yml

* Add badge for linter

* fix linter complaints, trailing spaces and headings

* don't validate RUBY or JSCPD

* remove check on push to dev

Co-authored-by: saachipahwa <55795994+saachipahwa@users.noreply.github.com>

* change linter setting

* update workflows

* use container with flutter

* remove linter (too pedantic even for me)

* change badge

* fix badge

* fix badge - third time's the charm

* change name

Co-authored-by: saachipahwa <55795994+saachipahwa@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

Wellbeing Sharing
2 participants