Do not change auth method if user does not save password
Sanity check - fix only for biometric method
Check for new auth method only when save password
ScrollView Persist taps on login view
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
- unused code is removed
- "load more" button is hidden for a new account
- each next page of tx history contains 20 transfers
unless thare is no enough transfers in history
Add bottom sheet to message long press
Make whole bottom sheet panel dragable
Fixes #9846
Use spring animation for bottom size of bottom sheet
Remove extra border height from bottom sheet
The height is already added to content height
Remove extra set value for animation
Timing and spring already mutates the animation value
Reuse chat bottom sheet in chat list
Update the size of new chat bottom sheet
Add remove to group chat
add chat id for clear history to be reused outside of current chat
Fix public chat bottom sheet missing destructoring
Replace icon for chat fetch history
Could be rotated arrow up, but this requires special handling in icons or list item
Fix remove public chat event
Dismiss keyboard on sheet mount
iOs rename arrow down icon
Fix unusable screen after close of bottom shet
The callback is called after 1.5 seconds after the animation starts. This happens because spring animation takes more time on animating post animation oscillations.
Add accessibility labels
Fix bad message destructoring
add view profile on long message press
Reset bottom value after animation
Remove pending circle from avatar in chat sheets
Do not show open profile on own messages
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
This commit does a few things:
1) Messages are offloaded from any chat once we go back from the home.
This allows us to ignore any message that is coming in from a chat we
are not currently focused.
2) After 5 seconds of not-scrolling activity, any received message that
is not currently visible will be offloaded to the database.
3) Similarly received messages that are not visible will be offloaded to
the database directly
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
We check that ENS does not return an empty public key. In addition to
that validation is done on status-go in order to avoid saving the chat.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
This commits resolves ENS names in the background, implementing retries
and exponential backoff.
All is handled in the background in status-go.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
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`
Add contact indicator in 1:1 as a text. Fixes#9826
Fix e2e
explicitly define line height
On android and iOs line height is different, explicitly define so it will be the same in both platforms.
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Front end changes:
As there is no guarantee that `newblock` event will be dispatched
consequently (e.g. if there was a delay after block#1 the next event
might be dispatched for a block#2000, no guarantee that block#2 will be
the next one), `newTransactions` field was added with a map of accounts
to the number of new transactions received to this block. In result if
there are new transactions we request them all of db instead of fetching
them on for the block specified in `newblock` event, as it was done
previously.
Back end changes:
- In order to avoid handling of the reorganized blocks we use an offset
from the latest known block when start listening to new blocks. Before
this commit the offset was 15 blocks for all networks. This offset is
too big for mainnet and causes noticeable delay of marking a transfer as
confirmed in Status (comparing to etherscan). So it was changed to be 5
blocks on mainnet and is still 15 blocks on other networks.
- Also before this commit all new blocks were handled one by one with
network specific interval (10s for mainnet), which means that in case of
lost internet connection or application suspension (happens on iOS)
receiving of new blocks would be paused and then resumed with the same
"speed" - 1 blocks per 10s. In case if that pause is big enough the
application would never catch up with the latest block in the network,
and this also causes the state of transfers to be delayed in the
application. In this commit in case if there was more than 40s delay
after receiving of the previous block the whole history in range between
the previous received block and ("latest"-reorgeSafetyDepth) block is
checked at once and app catches up with a recent state of the chain.
We should only start receiving messages/processing topics once all the
initializiation is completed, so an endpoint that start the messenger
has been added.
Before we would initialize the topics/receiving messages at the same time,
which resulted in a race condition where a topic was signaled from
status-go and was considered new just because was not loaded yet.
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
Handle ens-name in qr reader
If user has an username generate link with it
Ensure no infinite recursion happens on qr scan event
Fix test for custom profile ens-name
Fix QR code read for ens-name
Extra check for ens name in QR code
Do not open unknown profile for bad ens name
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
When moving from chat to chat, component-did-mount is not fired as the
component is never unmounted, therefore messages were not loaded.
This changes the behavior to use the component-did-update lifecycle
method.
Signed-off-by: yenda <eric@status.im>
This commit fixes a couple of issues.
The first one is that when we go from offline->cellular-network->wifi
historical requests were not triggered (only when going from
offline->online, but if they are disabled in cellular network they won't
fire).
The second is due to the fact that it is possible that the connection
status gets into a bad state, (this happens for example if get-latency
returns all errors, but we are online, and it won't be retried), and no
connection attempt is made anymore.
I have changed the logic to periodically check the connection state, and
try to connect if too much time has passed since last error (10s),
similarly to what we did before, but in a tick, so we are less reliant
on having the right state in the db.
Signed-off-by: yenda <eric@status.im>
Fixes#9884 React modal is drawn above the app (maximum z-index) while the bottom sheet and popover are part of the app. https://facebook.github.io/react-native/docs/modal.html documentation also suggest to not use modal in that case cause we lose some control over navigation. Now modal are handled by navigation and we can draw our popover and bottom sheet on bigger z-index and better control what should be on the top.
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
- all messages are not shown right away, in order to paginate history
a user has to press "load more" button
- added link to etherscan before transfers list
- there is a new "fetch more" button at the end of the list
- rest of changes can be found here status-im/status-go#1775
This adds a feel that it is opened already on the desired index
Add input margin only when there's no bottom shet
Use the right height for sticker panel
Use the stickers panel height in extensions panel
Fix indentation on stickers view
Remove extra margin on stickers indicator
Use custom panel height on android
Rename chat panel height subscription
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Add animated assets on intro screens
Add component for video on home view
Did not use it for now - as the asset for that video is broken
Do not justify center videos in intro
Update video assets for home view
fix generate-nix.sh script for maven deps
Signed-off-by: Jakub Sokołowski <jakub@status.im>
add missing android-scalablevideoview dependency
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Fix center position of videos in onboarding
Use image for sample key in android
Because during animation transition in creates a black background
Add play when inactive for ios
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Update the rounded corners on all messages
Update paddings and margin for message author
Move timestamp 3pt from bottom
Fix miss-placed padding in message author name
Add margin between emoji and timestamp
Change reply icon
Decrese font size of emoji message
Remove extra space in style map
Remove extra margin between author and message
Replace reply icon with glymph
Update Inter font to support new glyphs
Update paddings for reply author
Update timestamp padding from bottom
Added line-height explicitly to support it cross platform. Otherwise android and ios use different size.
Remove margin right space on usernames
Remove hardcoded width of messages
Use same line-height for all types of names
Add background to emoji
Bug in RN emoji cropped on smaller line-height https://github.com/facebook/react-native/issues/18559
Fix reply on user with ens name
Fix message margin top should be always 4
Add minimal fix for ui in ens name screen
Remove extra computations for timestamp position
Update e2e test
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Fix misspelled wallet
Change glossary position in help center
Fix wrong padding on the view
Make letter transition more smooth
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Makes the view stretch to the size of safe area instead of moving it from bottom. Fixes transparent background on navigation animation iPhoneX. Fixes#9695
Do not set cover bg on android
Signed-off-by: yenda <eric@status.im>
Move tabbar notification badge position to left and bottom. closes#9436
Update badge font weight as per spec
All badges in the specification are Medium (500) weight
Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>