Commit Graph

368 Commits

Author SHA1 Message Date
Jakub Sokołowski 87b87e0d95
android: drop com.android.vending.CHECK_LICENSE perm
This blocks submissions to F-Droid repository, and is not necessary.

https://stuff.mit.edu/afs/sipb/project/android/docs/google/play/licensing/adding-licensing.html
https://developer.android.com/google/play/licensing/client-side-verification#manifest-permission
https://raccoon.onyxbits.de/blog/android-permissions-explained-com-android-vending-check_license-210

As far as I cn tell this permission might be coming from [react-native-blob-util](https://github.com/RonRadtke/react-native-blob-util):
e5a0bc2746/android/src/main/AndroidManifest.xml (L4-L5)

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-04-14 10:37:16 +02:00
Parvesh Monu 36c7d8e4ca
Implementation of remote android notifications (#13028) 2022-02-14 17:27:33 +05:30
Michele Balistreri 52afbf46ee
get images over HTTPS with self-signed certificate
Co-Authored-By: andrey <motor4ik@gmail.com>
Signed-off-by: Michele Balistreri <michele@bitgamma.com>
2022-02-10 18:41:10 +01:00
Parvesh Monu fd894dc339
fix gradle google free variable (#13064) 2022-01-31 16:12:46 +05:30
Parvesh Monu 69221695b3
fix alert dialog background color (#13010) 2022-01-18 00:45:40 +05:30
Parvesh Monu ffba396e4d
fix distortion of app theme due to change in system theme (#12934) 2021-12-27 15:24:45 +05:30
andrey 437d58f827
use react-native-fast-image for stickers
Signed-off-by: andrey <motor4ik@gmail.com>
2021-11-17 15:44:27 +01:00
Brian Sztamfater 68ffddbb51
Add ability to Share image from Status
Signed-off-by: Brian Sztamfater <brian@status.im>
2021-09-22 10:07:08 -03:00
Jakub Sokołowski e2c18ea151
add commit hash to app metadata for Android and iOS
This will make identifying installed software easier.
It can also be used to generate F-Droid RPs more easily.

Depends on:
https://github.com/status-im/status-jenkins-lib/pull/35

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-09-21 11:48:45 +02:00
Michele Balistreri 5246617c69
target SDK 30
support scoped storage from Android 10

better permission handling on iOS 14

Signed-off-by: Michele Balistreri <michele@bitgamma.com>
2021-09-13 10:17:51 +03:00
Michele Balistreri 85fcabe249
emit url event when recreating Activity with link
Co-authored-by: Churikova Tetiana <churikova.tm@gmail.com>
Signed-off-by: Michele Balistreri <michele@bitgamma.com>
2021-08-05 12:10:05 +02:00
andrey 5f719ac95b
react native navigation
Signed-off-by: andrey <motor4ik@gmail.com>
2021-06-14 20:03:49 +02:00
Andrea Maria Piana 116b4d8812
Add community notifications on android & IOS
[Fixes: #11806]
[Fixes: #11877]

Features added

An admin should receive a notification on android if a community request is made
Clicking on the push notification will take you to the list of requests
Changes to push notifications
Push notification for messages are grouped by chat, similarly to discord. Only the first notification in a chat will alert, the next will be "silent" notification. Meaning you will see the message but it will not alert. This is consistent with discord/whatsapp.
Clicking on a transaction notification will take you to wallet (not sure it was doing that before, but it might have)
Changed the behavior of the notification toggle, before Notifications and wallet transactions were separate, meaning you could have wallet transaction and Notifications disabled and you'd still receive transactions notifications. Now you need to have Notifications enabled to receive wallet transactions. Eventually we will have an option to toggle message notifications.

Technical details

Removes headless tasks, they were not used
Message notifications are passed unchanged to java, we still check if the chat is in the foreground, but no modifications are made to the notification object. This should get us closer to avoid clojure completely.
Merged the two notifications implementation (NewMessageSignalHandler and PushNotificationHelper). We should split maybe off in more meaningful classes, but there's less code duplication now, and it can be re-used for non-chat (communities) notifications.
Parsing of text for message notifications is done in status-go
Signal is not passed to status-react if notifications are not enabled

Next step

To completely remove notification code from status-react the following are required:

Java needs to be alerted of which chat is in the foreground and whether the app is in the foreground
Transaction notification body message need to be created in status-go
Notification signal needs to be stopped in Java

Limitations

If the name of a contact changes, the notification will not change, once is displayed, it won't be modified
2021-03-31 21:45:08 +02:00
Jakub Sokołowski aff335b305
gradle: Exclude Google libraries when GOOGLE_FREE=1
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-03-02 16:29:37 +01:00
Roman Volosovskyi 3685f6a500
[#11117] Move PNs to status-go 2021-02-05 17:03:34 +02:00
andrey 08b9cfcf52
[#8284] Remove unnecessary permissions [Android]
Signed-off-by: andrey <motor4ik@gmail.com>
2021-01-21 16:23:54 +01:00
Gheorghe Pinzaru 40e2839793
Exclude google deps based on env
Export all vars from .env

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-11-13 11:05:28 +03:00
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
Jakub Sokołowski 788d0d5cc5
add ANDROID_APK_SIGNED to make unsigned builds for F-Droid
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-07-29 10:12:38 +02:00
tbenr 86700f2b5c
audio messages
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2020-07-29 10:09:31 +02:00
Gheorghe Pinzaru 497af38a7f
Update usage for toolbars
Replace all the usage of the button without component

Use quo

Fix tests

List item in multiaccounts

Use list items in contacts

Fix welcome  screen button

Experiment long press

Big list item

Remove old bottom sheet

Use bottom sheet

Keycard

Add error to list item

Stickers panel button

Images panel

Fix z-index in profile

Fix android crash

Fix signing list item

Try fixing test

iOs gas sheet keyboard

Disable root alert in e2e

keycard signing sheet height

Clean up bottom sheet events

Replace flat list in profile

Memorise the manual-close value for bottom sheet

Mailserver QR scanner

Fix e2e tests

E2e fix 2

Fix e2e 3

Remove extra fn

Reduce bridging time for animation

Trick android layout

Try hooks

Fix profile missing ens-name

Disable press on control in list-view

allow disabling animations in list item

Use simple list in wallet assets settings

TBD - this screen should be rewritten from scratch. Now on every interaction the full list is re-rendered, also it makes the wallet main screen to re-render.

Fix send sheet

Handle long press in main thread

UI fixes

perf

Update e2e

fix missing user name in image long press

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-07-06 13:35:50 +03:00
Gheorghe Pinzaru 197ce2eb60
Change status-bar color on theme change
Move into separate ns to avoid circular dependecy

Fix android system white theme status bar

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-06-09 13:18:07 +03:00
Gheorghe Pinzaru fd8558421d
Set status bar style with theme
Instead of making it full screen then changing on js start, we can use the same theme as in app

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-06-08 17:34:36 +03:00
Andrey Shovkoplyas f659cbf242
camera roll 2020-06-01 11:34:13 +02:00
Vitaliy Vlasov ddbf7bc066
Temporarily fix Flipper dev-mode webview crashes
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2020-05-25 15:09:59 +03:00
Gheorghe Pinzaru 0ff6579fa3
Add animated buttons to Quo
Move haptic

Upgrade redash

Add button component

lint

Add button icon type

Add disabled theme

Add accessibility-label

Fix android color

Fix preview modal

Remove android ripple effect

test android

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-05-20 17:51:38 +03:00
Andrey Shovkoplyas 7731839693
[#10631] make it possible to debug webview in chrome on nightly
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2020-05-19 12:35:26 +02:00
Jakub Sokołowski 3e20616471
disable hermes warnings that dump translations to stdout
These kinds of warnings dump minified translation files to stdout:
```
/build/android/app/build/generated/assets/react/pr/index.android.bundle:943:1256: warning: The first definition was here.
__d(function(e,t,a,n,o,r,s){o.exports={"about-app":"About","about-key-storage-content":"Status will never access your private key. Be sure to backup your seed phrase. If you lose your phone it is the only way to access your keys.","about-key-storage-title":"About key storage","about-names-content":"No one can pretend to be you! You\u2019re anonymous by default and never have to reveal your real name. You can register a custom name for a small fee."
```

Details: https://github.com/facebook/hermes/issues/216

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-18 13:33:39 +02:00
Gheorghe Pinzaru d133f57678
Remove source-map android debug
Update flipper version android

Disable source maps ios

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-05-14 15:43:06 +03:00
Gheorghe Pinzaru c34df26e19
Move icons assets into resources
Fix logout icon usage

Update icons docs

Remove scripting

change jenkins

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-05-08 14:12:52 +03:00
Gheorghe Pinzaru 2140a9867b
Upgrade react native to 0.62.2
Xcode updates

Localization

Pods upgrade

Update package.json

Upgrade android

Fix gitignore

Add flipper

Do not enable flipper by default on ios

maven update

Remove outdated hermes

idk what it is, but it's outdated

show warning on build

gradle update

rebase

Update deprecated clipboard

nix

align e2e to rn upgrade

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-05-06 17:35:13 +03:00
Gheorghe Pinzaru 01452794a1
Add text input and tooltip components
Add tooltip component
Add text input component
rename

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-05-04 16:38:26 +03:00
yenda d5ef218584
use shadow-cljs
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: yenda <eric@status.im>
2020-04-30 15:43:46 +02:00
Gheorghe Pinzaru 38125173cb
Add Quo component library base
Add text component

Add header component

Change animated root ns

Add spacing design tokens

Add components preview

Add Readme

Add safe area components

Use reanimated from component library

Add colors tokens

Add inherit style for text

Add animated header component

A view with header which can be animated on scroll, used in walled, profile and contact screens

Persist previews navigation state

Rename component library into Quo

Document colors

Extend readme

Header handle long titles

Add InterStatus as monospace font

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-04-28 11:35:06 +03:00
Jakub Sokołowski 439643daa4
undo removing of preBuild gradle stop
This partially reverts commit 548fe04f54.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-04-24 20:15:02 +02:00
Jakub Sokołowski 548fe04f54
gradle: remove unused buck configuration
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-04-24 11:18:36 +02:00
yenda 23af624305
fix #10052 make finding the public key easier in profile
Signed-off-by: yenda <eric@status.im>
2020-04-16 13:33:49 +02:00
Vitaliy Vlasov e11385e350
Add web3.keycard.signTypedData
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2020-04-14 20:07:35 +03:00
Jakub Sokołowski 5c8a8e83ac
show proper error if nkd-build is missing
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-04-14 18:31:36 +02:00
Andrey Shovkoplyas 2122c5518f
fix colors android
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2020-03-27 15:36:09 +01:00
Andrey Shovkoplyas fb86b4d367
switch control color android
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2020-03-26 16:40:25 +01:00
Churikova Tetiana 68f0a02cbc
fix e2e
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2020-03-26 10:36:21 +01:00
Andrey Shovkoplyas a447bed4ac
dark mode 2020-03-26 08:34:13 +01:00
Vitaliy Vlasov dd7b3c21ae
Unlink webview
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2020-03-25 14:34:18 +02:00
Vitaliy Vlasov 85d0022b26
Use community WebView
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2020-03-24 18:07:03 +02:00
Gheorghe Pinzaru d24f4690b8
Fix failing test for navigation task
Handle default case for ens confirmation

Before navigation away the registration state is cleared and case does not handle default value for nil

Remove extra space on home button

Remove outdated options

Fix e2e

Change navigation replace arguments as per rn5

Fixes #10178

Dispatch navigation later

Do not restore state for react-native-screens

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-03-18 17:47:03 +03:00
Gheorghe Pinzaru d823a2082a
Update react navigation and rework wrapper
Get rid of navigation wrapper

Use new API to declare navigation

Update tabbar component

Update to use new navigation events

Add ios presentation modal

Navigation cleanups

Android specific updates

Use letsubs for stack subscriptions

Keycard did load event backward compatibility

Fix tabbar and wallet on-focus bad rebase

Do not keep welcome screen into the stack

Comment outdated test

Fix rebase on home PR

Cancel back button on screens which can't be popped

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-03-17 11:52:31 +03:00
Gheorghe Pinzaru 10fab4e77c
Add billing permission android
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-03-16 12:26:41 +03:00
Jakub Sokołowski de53581ef4
nix: don't generate keystore inside of Nix build
changes:
- Stops scripts/generate-keystore.sh runnig for every new TARGET=android shell
- Moves running scripts/generate-keystore.sh to keystore Makefile target
- Makes generate-keystore.sh accept STATUS_RELEASE_STORE_FILE as env variable
- Fixes error about missing lsof from start-react-native.sh
- Fixes error about unknown -keystore command in scripts/generate-keystore.sh
- Fixes getting OS_NAME without calling Nix shell
- Fixes getting TMP_BUILD_NUMBER without calling Nix shell
- Adds lsof used in start-react-native.sh to Android release Nix derivation
- Simplified how nix/scripts/build.sh appends the --keep flag
- Made use of colors.sh in more scripts

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-03-05 10:56:54 +01:00
Jakub Sokołowski cb78293db7
use Android keystore from Jenkins credentials
This way we don't have to store it on individual CI hosts.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-02-27 06:54:28 +01:00