Commit Graph

258 Commits

Author SHA1 Message Date
Gheorghe Pinzaru 050f20cfae
Add local notifications for transactions
Pods

Add headless js service

Handle Local Notifications react

CopyPaste driven implementation of java notification

pn demo

Show iOs push in foreground

Show icon in notification

Enable notifications on login

Get chain from status-go

Add UI for switching notifications

go go!

Fixup

Handle notification onPress

Android UI

Handle press iOs

Handle android press and validate

go update

Fix route params in universal link handler

Set show badge explicitly to false

Fix e2e

bump status go

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-10-29 15:40:58 +03:00
Gheorghe Pinzaru 0368895edf
Allow to enabled debug
Optimistic update

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-10-08 13:57:37 +03:00
Roman Volosovskyi 22ca98b0f8
[#11216] Fix moving cursor after pressing mention suggestion on samsung device 2020-09-28 17:59:03 +03:00
Gheorghe Pinzaru b737051e3c
Use the new intent link for private chat
Fixes #11080

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-08-18 16:15:32 +03:00
Roman Volosovskyi c2277cbbe5
[#9986] Allow to disable fetching of tx history on mobile network 2020-08-15 21:34:37 +03:00
tbenr 86700f2b5c
audio messages
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2020-07-29 10:09:31 +02:00
Roman Volosovskyi 10a814764d
[#10195] Delete multiaccount 2020-07-28 15:42:40 +03:00
Roman Volosovskyi 920bc7d93e
[#10195] Separate keystore dir per multiacc
Having all keys related to specific multiacc in a separate dir will
simplify removing of the multiacc. Also it will allow adding of the same
account to different multiaccs.
2020-07-09 13:14:42 +03:00
yenda ddcb1fa54a
use resources for notification text for localization
Signed-off-by: yenda <eric@status.im>
2020-06-24 17:55:29 +02:00
yenda 9abf9d3891
add number of notifications to badge 2020-06-24 17:55:20 +02:00
yenda 51198f5b69
stop app when pressing stop button on notifications 2020-06-24 17:55:20 +02:00
yenda fd874c14df
open app when tapping sticky notification 2020-06-24 17:55:19 +02:00
yenda 754673faba
change notification icons 2020-06-24 17:55:19 +02:00
Jakub Sokołowski 149b37f75b
upgrade Kotlin: 1.3.11 > 1.3.50
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-03 18:44:15 +02:00
yenda 5608d649b0
notifications: enable local notifications
- only show notifications when app is in background
- open the user chat upon tap on notification
- remove chat from notifications on tap or dismiss notification
- keep the service alive on host destroy
- enable local notifications
2020-04-28 22:25:09 +02:00
Andrey Shovkoplyas a79a72fccb
[#9749] Support importing private key and seed 2020-03-03 12:51:28 +01:00
Roman Volosovskyi 89535ea8fc
Fix geth logs on Android 10
From now on geth logs are stored at
`/storage/emulated/0/Android/data/im.status.ethereum.debug/files/Download/geth.log`
because app cant write to `sdcard/Download/geth.log`
2020-02-27 14:10:05 +02:00
Andrea Maria Piana a2af83f034
Add option to enable waku-mode
This commit adds an option to enable waku mode through ENV settings.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2020-02-17 18:22:50 +01:00
Roman Volosovskyi ef49699222
[#9942] Upgradable paths in configs
Storing absolute path for different configs breaks compatibility on iOS
as app's dir is changed after upgrade. The solution is to store relative
paths and to concatenate it with `backend.rootDataDir`. The only
exception is `LogFile` as it is stored outside `backend.rootDataDir` on
Android. `LogDir` config was added to allow adding of custom dir for log
file.
Configs concerned:
`DataDir`
`LogDir`
`LogFile`
`KeystoreDir`
`BackupDisabledDataDir`
2020-02-03 20:34:40 +02:00
Pedro Pombeiro e220ecbb0a
Cleanup
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2020-01-10 19:59:54 +01:00
acolytec3 3bcf7ecf29
Add BIP39 validation for seed phrase recovery
Signed-off-by: yenda <eric@status.im>
2020-01-06 16:02:14 +01:00
yenda bf16116acd
move multiaccount settings to a table
integrate status-go changes to move multiaccount settings to a table
that can be migrated

Signed-off-by: yenda <eric@status.im>
2020-01-02 18:07:10 +01:00
yenda a72d4c7d85
integrate status-go fix for keycard accounts
Signed-off-by: yenda <eric@status.im>
2019-12-19 21:32:10 +01:00
Volodymyr Kozieiev 7168eada1c
Calls to gfycat and identicon made async in few places
Signed-off-by: Volodymyr Kozieiev <vkjr.sp@gmail.com>
2019-12-06 17:42:36 +02:00
Andrea Maria Piana 78d694f52f
Move message processing to status-go and introduce protobuf
This commit moves all the processing of messages to status-go.

Messages are going arrive to status-react already saved an processed.

Receiving/sending/retrieving from db is now using the same identical
structure. The only processing left in status-react is to mark the
messages as seen and update the unviewed count locally (only
status-react knows whether the count should be updated).

Partially remove commands as well as won't be used anymore.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-12-05 17:30:30 +01:00
Jakub Sokołowski b32dd113f6
nix: upgrade nixpkgs
Also:
- upgrade Go: 1.12 > 1.13
- upgrade Android SDK: 28.0.3 > 29.0.2
- nix: stop using system Fastlane for iOS builds
- nix: include CocoaPods in shell for iOS
- nix: concatenate shellHooks correctly
- fix gomobile status-go build by setting GO111MODULE=off
- fix gradle accepting empty STATUS_GO_SRC_OVERRIDE value
- don't use a pure shell for uploadToSauceLabs()

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-11-26 16:30:41 +01:00
Pedro Pombeiro f7384ae338
Add support for `STATUS_GO_SRC_OVERRIDE` env var
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-11-13 16:41:21 +01:00
Pedro Pombeiro a71500b312
nix: fix passing of env vars to release-android expression 2019-11-13 12:01:48 +01:00
yenda 36ad6fb762
support for local notification service on Android
- add option in profile on Android to enable local notifications
- use foreground service to keep the app alive when running in the background
- implement enable and disbable notification function in status module

When enabling notifications, a foreground service is started that displays
a sticky notification to make the user aware that the app is running in the
background.
Notifications are updated whenever a new.message signal is handled on java side.
Currently only one to one chats are generating notifications but that can be
easily extended to other types of messages, including mentions and keywords.
The ens name of the user as well as keywords to follow should then be passed
to the native side when calling the enable function.

Signed-off-by: yenda <eric@status.im>
2019-11-07 09:59:12 +01:00
yenda 7bb45fdd8f
remove firebase
Signed-off-by: yenda <eric@status.im>
2019-10-29 15:03:58 +01:00
Andrey Shovkoplyas 371c66aad1
Remove UUID related code #9048
Signed-off-by: yenda <eric@status.im>
2019-09-30 15:55:55 +02:00
Andrea Maria Piana acd7e56d1d
Add gfycat/identicon from status-go
Signed-off-by: yenda <eric@status.im>
2019-09-26 14:12:43 +02:00
Dmitry Novotochinov 1df30f7447
handle initialized cards
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-09-16 11:14:35 +03:00
Pedro Pombeiro e4eabd2810
Migrate to use AndroidX 2019-09-12 16:13:43 +02:00
Pedro Pombeiro 9feb31bd3b
Upgrade react-native to 0.60.5
- Use community net-info, react-native-webview instead of deprecated react-native classes
- Remove react-native-tcp
- Upgrade react-native libs (react-native-camera, react-native-firebase, react-native-mail, react-native-udp, react-native-webview-bridge)
- Do not include `:react-native-android` module explicitly
- Take advantage of RN AutoLinking
- nix: Update Gradle dependencies
2019-09-12 16:13:42 +02:00
yenda d312192209
clean up native-module
- remove impl/modules.cljs namespace because it was needlessly redundant
- remove `create-account` unused call
- add documentation for some calls
- only keep `(status)` check for relevant calls that are failing tests
because they are evaluated
2019-09-05 18:09:56 +02:00
Andrea Maria Piana e7fa010088
Move gaps to status-go
This commit moves gaps to status-go.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-09-04 15:53:48 +02:00
yenda ef36ece15b
[fix 8829] fix wrong password behavior on login
fix #8829

Signed-off-by: yenda <eric@status.im>
2019-09-04 13:20:38 +02:00
Andrea Maria Piana b0dc2dd4f5
Use no backup android & ios
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-08-27 06:24:44 +02:00
yenda 41cf68b6a7
[fix 8786] fix multiaccount recovery and add account
fix #8786

- multiaccount recovery wasn't saving the root key properly
- this resulted in the impossibility to add new accounts in the wallet

Signed-off-by: yenda <eric@status.im>
2019-08-23 13:15:28 +02:00
Pedro Pombeiro cfcbe6e5fb
Remove unused `android/app/react.gradle` and mapview leftovers
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-08-23 11:59:30 +02:00
yenda d7cd2b8a74
integrate status-go accounts 2019-08-20 17:42:02 +02:00
yenda d2f1bbeb16
integrate status-go initKeystore native call
- avoids having to start a node before login
2019-08-20 17:42:02 +02:00
Pedro Pombeiro 492f2df547
Move version definitions to gradle.properties
- Update minSdkVersion to 18
2019-08-15 11:18:38 +02:00
Dmitry Novotochinov b635691c25
recovery flow v1
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-08-14 19:42:26 +03:00
Andrey Shovkoplyas ba112a765b
[#8666] Add account via BIP 44
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-08-14 17:58:24 +02:00
Andrey Shovkoplyas 6d337bc69a
multiaccounts 2019-07-30 20:35:58 +02:00
Jakub Sokołowski 0b1659fab9
nix: use sha1 for status-go output filenameThis fixes issue with branch names containing slashes.Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-07-30 09:22:31 -04:00
Pedro Pombeiro 67d21c98c1
nix: Use status-go commit sha1 in Nix expression to allow for moving branches
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-07-20 10:11:34 -04:00
Vitaliy Vlasov e9fd6e1a6b
Onboarding setup wizard
New onboarding e2e tests updates

New onboarding e2e fix 2

Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-07-08 18:17:50 +03:00
Andrea Maria Piana 138ade3b8d
Move installations to status-go
This commit moves the management of installations to status-go, and
migrates the data from realm.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-07-03 12:50:23 +02:00
tbenr 090a4e7c76
fixes #6573
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-31 10:25:24 +02:00
bitsikka d640b4c87c
[7947] Feature: Blank out app preview screen when switching apps on mobile
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-22 15:31:50 +02:00
Roman Volosovskyi 3226309bab
Add js logs to archive 2019-05-15 17:40:41 +03:00
Roman Volosovskyi ff39426e56
[android] send logs to error-reports@status.im 2019-05-10 17:02:58 +03:00
Pedro Pombeiro f329ca9bdf
Add comments to STATUS_GO_VERSION to avoid manual editing
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-05-02 21:44:15 +02:00
Pedro Pombeiro 65e6e80349
Create Nix package for building status-go 2019-04-09 12:44:39 +02:00
Dmitry Novotochinov 4decedf5f6
Revert "Revert "[#7133] sign tx with keycard""
This reverts commit 4ccb1ea52d.

Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-04-05 15:49:47 +03:00
Andrea Maria Piana f8674c0ee1
Add reading nodes from contract
This PR is part of network incentivisation. It adds a way for a client
to pull nodes from a contract.

This is done by selecting the `eth.contract` fleet. If that is selected
on login it will fetch nodes from a contract and pass them to status-go.
If these can't be fetched, it will default to `eth.beta`.

Currently contract information are hard-coded, but eventually the user
will be able to add their own (probably).

Toggled off in release.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-04-05 14:32:15 +02:00
Dmitry Novotochinov 4ccb1ea52d
Revert "[#7133] sign tx with keycard"
This reverts commit feffcaf33d.

Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-04-02 20:12:40 +03:00
Dmitry Novotochinov feffcaf33d
[#7133] sign tx with keycard
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-04-02 18:07:41 +03:00
Andrea Maria Piana 29c168dfa1
Upgrade status-go and turn chaos mode on
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-03-26 10:59:21 +01:00
Andrea Maria Piana 530a6dca2e
Stop activity if we cant start node
Currently when receiving a push notification while the app has not
started (on android), the whole app is woken up. If autologin is enabled, we will try
to start the node, but will fail has no activity has been attached.
In such cases we try for 10s and quit the app if not successful.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-03-21 16:33:16 +01:00
Andrey Shovkoplyas ba37f7b8d0
[#5461] Implement EIP-712
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-03-07 15:39:17 +01:00
Andrea Franz d4594d815f
add hash-transaction and send-transaction-with-signature
Signed-off-by: Andrea Franz <andrea@gravityblast.com>
2019-03-04 11:19:50 +01:00
Igor Mandrigin 9ba0bda8f7
Use gomobile binaries (again)
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-14 10:19:24 +01:00
Igor Mandrigin 3617fefbe9
Revert "Use gomobile binaries for iOS and Android."
This reverts commit c47fc34127.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-12 12:34:27 +01:00
Adam Babik c47fc34127
Use gomobile binaries for iOS and Android.
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-12 10:21:31 +01:00
Dmitry Novotochinov 1b836bf7ec
[#7006] login with keycard
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-02-06 00:20:07 +03:00
Igor Mandrigin fafecfe95a
Get rid of StatusService.
StatusService was only used to handle `signalEvent:` from status-go.
This commit simplifies this interaction and getting rid of the service
and all the problems that come with it.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-01-29 12:01:05 +01:00
Pedro Pombeiro d3f1b37c12
Use new status-go and rename NotifyUsers
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-24 15:41:32 +01:00
Pedro Pombeiro 5a69b4198e
Update PNs to use data-only messaging, and only encode/decode data values. Fixes #6772
Fix navigation to chat when PN is tapped while signed off. Fixes #3488

Anonymize PN pubkeys. Part of #6772
2019-01-17 19:23:55 +02:00
Roman Volosovskyi 2777809db9
enable saving password on android
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-01-08 17:40:00 +01:00
Pedro Pombeiro 9d21cf143e
Add Send Logs command. Closes #6710
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-01-08 09:48:56 +01:00
Andrea Maria Piana d760f1696c
Add mailservers confirmations & use peer count for online status
We now check that we are only connected to some `peers` instead of using `NetInfo` from `react-native`.

This is because it has been reported to be quite flaky at times, not reporting online status after sleeping, and for privacy concerns (on ios it pings `apple.com`, on desktop `google.com`).

Adds a new banner `Wallet Offline` and change `Connecting to peers` to  `Chat offline`.

A message will be marked as `Sent` only if it made it to the mailserver you are connected to, which will increase the guarantees that we can make about a message (if you see it as sent, it has reached at least a mailserver), this has the consequence that:

- If you are not connected to any mailserver or the mailserver is non responsive/down, and you send a message, it will be marked as `Not sent`, although it might have been actually made it in the network.

Probably this is something that we would like to communicate to the user through UX (i.e. tick if made it to at least a peer, double tick if it made to a mailserver )

Currently I have only enabled this feature in nightlies & devs, I would give it a run and see how we feel about it.
2018-12-12 19:53:01 +01:00
Roman Volosovskyi 4aa562f6a8
[slow sign in] Unlock account's DB before starting node
There is no need to wait for `Statusgo.Login` callback in order to start
unlocking realm db: currently it is encrypted via a key which is derived
from user’s password, so we can try to unlock that DB before starting
node. That’s how password will be checked. Right after that `:home`
screen is shown, the node is started, then `Statusgo.Login` executed.

The difference in sign in duration is more noticeable on Android
devices, where `Statusgo.Login` is much slower because of PFS database
encryption.
2018-12-12 17:46:52 +02:00
Pedro Pombeiro 85e0834d3a
Fix `scripts/update-status-go.sh` so it updates right file and removes any `v` prefix 2018-11-26 23:03:38 +01:00
Andrea Maria Piana 693eae9cf9
Send your own messages
Adds a `chat-id` field in `content` map.

The reason it has been added to the map instead of augmenting transit is
that it would simplify the calculation of `message-id`, which in this
case is consistent for both old & new clients.

`chat-id` also represents the `chat-id` with respect of the sender, as
in 1-to-1 chats that is asymmetric.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-06 21:19:50 +01:00
Andrea Maria Piana 9629983f7f
Remove instabug 2018-10-19 09:18:22 +03:00
Roman Volosovskyi 3dd532c656
fix "DexArchiveMergerException: Unable to merge dex" by requesting status-im:function via jitpack 2018-10-10 13:17:06 +03:00
Andrea Maria Piana 78b6d67d79
Allow to edit group membership
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-10-09 10:40:13 +02:00
Jakub Sokołowski 75f23a19ad
drop use of artifactory maven repo
Signed-off-by: Jakub Sokołowski <jakub@status.im>

- rename jar file to match flatDir search method
- try using ivy repo to pull status-go from github
- drop use of artifactory in pom.xml
- move status-go version to a STATUS_GO_VERSION file
- upgrade status-go to 0.16.0
- unzip with overwriting
- prepare-ios: doewnload archive only if it doesn't exist
- fix prepare-android and prepare-ios
- use Makefile targets to make sure status-go archives exist
- remove unnecessary call to make prepare-android

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-10-05 18:18:58 -04:00
Andrea Maria Piana 165f1a46c7
Propagate signed membership information
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-10-02 12:06:28 +02:00
Pedro Pombeiro 4ab5e43616
Replace call to `GenerateConfig` with local JSON. Closes #5739
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2018-09-19 17:06:10 +02:00
Adam Babik a79eca1e23
update status-go to 0.14 (Keys Derivation Padding Fix)
Signed-off-by: Adam Babik <a.babik@designfortress.com>
2018-09-13 16:56:58 +02:00
Eric Dvorsak 8d053b4389
[feature #5527] allow user to change status-go loglevel in settings 2018-09-07 15:22:32 +02:00
Eric Dvorsak 8eb5047d7a
[fix #4819] update react-native to 0.56
Fix figwheel-bridge path in clj-rn.conf.edn
update SplashScreen
update ios to 9.0
updated Podfile.lock
downgrade cocoapods to 1.5.2
update package-lock.json
update pod repo when installing
update appcompat to v27

Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-09-05 21:27:46 +03:00
Adam Babik e9399167f6
update status-go to v0.13.1 2018-08-30 18:46:52 +02:00
Adam Babik f054830533
Set FLEET in env variable
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2018-08-22 10:21:58 +02:00
pacamara 3f73c5545d
Fixes #5293: Messaging/transacting take too long to be processed
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2018-08-21 13:15:16 +02:00
Andrey Shovkoplyas 3e7c059b59
wallet refactoring
Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-08-18 07:28:43 +02:00
tbenr 672e8255c4
Fixes #5347
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2018-08-17 10:41:57 +03:00
Adam Babik 0a313ef525
Update status-go to 0.10.3
Signed-off-by: Adam Babik <a.babik@designfortress.com>
2018-08-13 23:03:23 +02:00
Igor Mandrigin f5ee2758e7
Update status-go to the latest version (develop-g03bf6e37).
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2018-07-30 12:21:41 +02:00
Roman Volosovskyi a586d177f5
remove JSC jail on native side (Android, iOS) 2018-07-29 08:47:29 +03:00
Pedro Pombeiro 3b4d7eebc7
Disable geth.log in release builds. Fixes #4782
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2018-06-18 10:25:09 +02:00
Jakub Sokołowski b0b75e398c
drop the extra ukranian host
squashed:
- drop the extra ukranian host
- update status-go

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-06-13 14:30:08 +02:00
Goran Jovic 268b07fddc
feature #4065 - gas and gas price can be changed for dapp transactions
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2018-06-12 16:19:51 +02:00
Pedro Pombeiro 3539020ee2
Update status-go to include latest bootnodes and static peers
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2018-06-11 20:40:45 +02:00
Pedro Pombeiro ed9d678e08
Add DO and Ukr mailservers. Closes #4623
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2018-06-08 18:44:21 +02:00