Commit Graph

177 Commits

Author SHA1 Message Date
Weijia 4382eca8b6 [FIX] Draft message do not go away when whole message is removed #965 2019-06-08 08:31:29 -03:00
Diego Mello a148e6d15d
[FIX] Analytics error events (#930) 2019-05-28 13:18:46 -03:00
Diego Mello 9e4a4d2454
[CHORE] Use react-native-firebase (#928)
We need to migrate from deprecated react-native-fabric to react-native-firebase.
This PR enables following Firebase features:
* Analytics
* Crashlytics
* Performance

It also tracks screen view without the necessity of HOC.

Future work:
I won't do it in this PR because it's large enough, but we need to log more app events, like 'sent_message', 'open_admin', 'media_upload', etc.
2019-05-28 10:03:08 -03:00
Diego Mello 896240457f
[IMPROVEMENT] Add toggle markdown to settings (#907)
* Add toggle markdown to settings

* Remove unused translation
2019-05-21 09:12:15 -03:00
Diego Mello 60418b75a4
Message render performance (#880)
- Refactored Message component to use React.memo and re-render only what's necessary
- Added a test mode to toggle markdown parse by long press drawer (it'll be removed in the next release)
2019-05-20 17:43:50 -03:00
Diego Mello 28628b4dba
Switch toast lib (#898)
* removed toast from ios

* changed showToast to showAlert

* removed from android

* fix lint

* conflict resolved

* fixed lint

* Fix toast position

* Change toast style

* Use followMessage from rest

* Temporary disable some visual toast tests

* Unnecessary lib version change
2019-05-15 16:33:30 -03:00
Diego Mello b03f69c6f3
Remove "updating" indicator inside the room (#895) 2019-05-14 17:06:17 -03:00
Diego Mello 2492371b50
[FIX] Check if room is mounted before setting state (#864)
* Tweaks on sequential threads messages

* Update tests

* Fix quote

* Prevent from deleting thread start message when positioned inside the thread

* Remove thread listener from RightButtons

* Fix error on thread start parse

* Stop parsing threads on render

* Check replied thread only if necessary

* Fix messages don't displaying

* Fix threads e2e

* RoomsListView.updateState slice

* Stop fetching hidden messages on threads

* Check if RoomView is mounted before rendering

* Refactor navigation events on RoomsListView

* Fix lint

* Fix listener
2019-05-03 11:54:57 -03:00
Diego Mello a243b1ccd7
Tweaks on sequential threads messages layout (#858)
* Tweaks on sequential threads messages

* Update tests

* Fix quote

* Prevent from deleting thread start message when positioned inside the thread

* Remove thread listener from RightButtons

* Fix error on thread start parse

* Stop parsing threads on render

* Check replied thread only if necessary

* Fix messages don't displaying

* Fix threads e2e

* RoomsListView.updateState slice

* Stop fetching hidden messages on threads

* Set initialNumToRender to 5
2019-05-03 10:33:38 -03:00
Diego Mello 94e32368dd
Remove connection badge (#862)
* Connecting indicator on RoomsListView header

* Connecting indicator on RoomView header

* Remove ConnectionBadge

* Show updating on RoomView load messages
2019-04-30 16:31:51 -03:00
Diego Mello 5744114d7d
[FIX] Threads (#838)
Closes #826
Closes #827
Closes #828
Closes #829
Closes #830
Closes #831
Closes #832
Closes #833
2019-04-24 15:36:29 -03:00
Diego Mello a891ee14ee
RoomsListView improvements (#819) 2019-04-17 15:57:46 -03:00
Diego Mello 9cf81bbab9
[NEW] Threads (#798) 2019-04-17 14:01:03 -03:00
Diego Sampaio 1d9acdb700 [NEW] Discussions (#696) 2019-04-08 09:35:28 -03:00
Diego Mello 2019ec58ce
[FIX] Add Realm.safeAddListener (#785) 2019-04-04 15:08:40 -03:00
Diego Mello 9e107bfdf6
Room item layout (#771) 2019-03-29 16:36:07 -03:00
Diego Mello fd5fbe47e8
Use FlatList in RoomView (#762) 2019-03-27 17:06:57 -03:00
Diego Mello 38dabfc9ff
Switch to react-navigation (#687) 2019-03-12 13:23:06 -03:00
Diego Mello a139cc83e5
New icons (#643)
* New Icons

* Remove unused assets

* Change send icon

* Layout tweaks

* Refactor Status

* Styles changed

* User layout fix

* Separator layout changes

* Sidebar status layout fix

* Fix Message.onLongPress issue

* Fix code markdown
Closes https://github.com/RocketChat/Rocket.Chat.ReactNative/issues/625

* Status lint

* Fix tests

* Navigation debounce

* RoomActions icons

* Space between components

* Group text

* Update tests
2019-03-01 13:49:11 -03:00
Diego Mello 0f516083f4
Add Icons class (#611)
Creates Icons class to manage when to load icons from native side or react-native-vector-icons.
It also fixes `react-native run-android` #517
2019-02-07 14:04:41 -02:00
Diego Mello 2585038112
Update JS SDK version (#602) 2019-02-07 13:48:10 -02:00
Diego Mello d5a285f85e
Create class to manage navigation (#594)
* Add Navigation class

* Place Drawer.js logic inside of Navigation

* Load less views at startup
2019-01-31 14:08:38 -02:00
Diego Mello 754508c2d9
Update dependencies (#587) 2019-01-29 17:52:56 -02:00
Diego Mello d23c055584
Unnecessary re-renders removed (#570)
* shouldComponentUpdate

* Rooms list shouldcomponentupdate

* RoomView shouldComponentUpdate

* Messagebox and Message shouldComponentUpdate

* EmojiPicker shouldComponentUpdate

* RoomActions shouldComponentUpdate

* Room info shouldComponentUpdate

* Update RNN

* Use only one Flatlist if none group filter is selected

* Update fix

* shouldComponentUpdate

* Bug fixes

* ListView changes

* Bug fix

* render list bug fix

* Changes on public channels

* - RoomView saga leak removed
- Join room e2e tests added

* Rest versions

* Method call versions

* Min RocketChat version alert
2018-12-21 08:55:35 -02:00
Diego Mello ad37586065
Use Rest API pt 2 (#568)
* Room files

* Pinned messages

* Starred messages

* Mentioned messages

* Search messages

* Bug fixes

* Profile

* Livechat

* Block/unblock user

* Erase room

* Archive room

* Remove unused method

* Bug fix
2018-12-12 13:15:10 -02:00
Diego Mello a2821af95b
Use Rest API calls (#558) 2018-12-05 18:52:08 -02:00
Diego Mello e9deb577e0
Regression: Resend messages with error (#532) 2018-11-16 09:06:29 -02:00
Diego Mello c6fcfb63fd
[WIP] New Authentication layout (#536)
New Authentication layout
2018-11-14 19:42:03 -02:00
Diego Mello 0dd4899789
[FIX] Dismiss keyboard on room close (#530) 2018-11-05 17:02:54 -02:00
Diego Mello ba9cc637d3
[NEW] Room header layout (#521) 2018-10-31 15:40:08 -03:00
Diego Mello 29b74133d4
Fix iOS pop gesture and open sidemenu gesture (#511) 2018-10-29 10:54:23 -03:00
Diego Mello 11e94b9017
[FIX] Messages not being loaded properly (#513) 2018-10-29 10:52:44 -03:00
Diego Mello 402403f964
Update navigation library (#501)
* v2

* Working on Android 0.57.3

* Drawer working

* Removing v1 navigator

* - Splash screen
- Icons changed

* Deeplink

* Remove EventEmitter from CreateChannelView

* Android search

* Android notifications

* OAuth

* Fix search props

* Lint and tests fixed

* Fix android build

* Improvements on iPhone X* usage

* Fix detox

* Fix android build

* Room.f added to RoomView.shouldComponentUpdate

* Animations on RoomsListView and RoomView

* Fix topbar buttons on Android
2018-10-23 18:39:48 -03:00
Diego Mello 44fcb327cf
[FIX] Delete room error (#485) 2018-10-16 17:30:04 -03:00
Diego Mello 2d7360f077
Connecting to DDP badge (#471) 2018-10-02 09:33:21 -03:00
Diego Mello e18491f589
Use inline requires (#459)
* Update dependencies

* Lint and test

* Added react-native fork

* rn 57

* Lint and tests updated

* Update xcode on circleci

* Use legacy build system

* Update tests

* Inline requires

* Fix eslint and remove temp gradle

* Unnecessary renders

* Update isNotch and Readme

* Tests updated
2018-09-26 10:56:36 -03:00
Diego Mello 81c53acd60
Update dependencies (#431)
* Update dependencies

* Lint and test

* Added react-native fork

* rn 57

* Lint and tests updated

* Update xcode on circleci

* Use legacy build system

* Update tests
2018-09-25 16:28:42 -03:00
Diego Mello 5752b865b0
Several fixes for 1.2.1 (#448)
* Fix user.roles

* Better onLongPress handle on messages

* Indicator position

* Fix role undefined in system messages

* Add baseUrl in case of file attachments

* Join room fixed

* RoomView params

* Broadcast fixes

* Add server layout changes

* Use native images

* Subscribe to not joined channels

* Fix alerts without i18n

* Tests updated
2018-09-19 11:18:32 -03:00
Diego Mello 96d0b1fcbc
[NEW] Message layout (#426)
* message container/component

* Separator component

* Reply

* Url

* tests updated

* Minor changes

* Audio component

* Broadcast button

* Minor touches

* Reply preview

* Edited

* Minor bug fixes

* - Update roadmap
- Bump version to 1.2

* Onboarding styles fix
2018-09-11 13:32:52 -03:00
Diego Mello de1a63c815
[NEW] Create channel layout (#420)
* RoomsListView layout

* Rooms list layout

* Sort component

* Header icons

* Default header colors

* Add server dropdown

* Close sort dropdown if server dropdown will open

* UserItem

* Room type icon

* Search working

* Tests updated

* Android layout

* Using realm queries instead of array iterates

* Animation duration

* Fixed render bug

* - NewMessageView
- backButtonTitle always empty
- SearchBox created

* New create channel layout

* Search refactored

* loginSuccess dismiss modal

* Tests working
2018-08-31 15:13:30 -03:00
Diego Mello 91025e9d03 [NEW] Onboarding (#407)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->
Closes #392 

<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
![aug-07-2018 17-03-50](https://user-images.githubusercontent.com/804994/43799447-f62074dc-9a63-11e8-8aac-bf2c4c5a8a2b.gif)
![aug-07-2018 17-03-35](https://user-images.githubusercontent.com/804994/43799446-f5f84a70-9a63-11e8-8947-265113ae9bf4.gif)
![aug-07-2018 17-03-13](https://user-images.githubusercontent.com/804994/43799445-f5d70ee6-9a63-11e8-94a9-f49c7d69fbba.gif)
2018-08-10 14:26:36 -03:00
Diego Mello c3994051d5 [NEW] Empty room background (#412)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->
Closes #398 

<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
![aug-09-2018 11-35-32](https://user-images.githubusercontent.com/804994/43906080-cbfadf92-9bc8-11e8-9ac9-44f43d3af023.gif)
![aug-09-2018 11-35-16](https://user-images.githubusercontent.com/804994/43906082-cc19411c-9bc8-11e8-9892-c65c86951a91.gif)
![image](https://user-images.githubusercontent.com/804994/43911366-ad830cd0-9bd5-11e8-8913-6a7e87a2206c.png)
2018-08-10 10:17:45 -03:00
Diego Mello 50eb03589a Improve RoomsList render time (#384)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->

<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
- [x] Added FlatList.getItemLayout() to improve list render time
- [x] Some texts were breaking lines at sidebar
- [x] Removed onPress from links at RoomsListView
- [x] Added eslint rule to prevent unused styles
- [x] Fixed auto focus bug at CreateChannel and NewServer
- [x] Fix change server bug
- [x] Fixed a bug when resuming in ListServer
- [x] I18n fixed
- [x] Fixed a bug on actionsheet ref not being created
- [x] Reply wasn't showing on Android
- [x] Use Notification.Builder.setColor/getColor only after Android SDK 23
- [x] Listen to app state only when inside app
- [x] Switched register push token position in order to improve login performance
- [x] When deep link changes server, it doesn't refresh rooms list
- [x] Added SafeAreaView in all views to improve iPhone X experience
- [x] Subpath regex #388
2018-08-01 16:35:06 -03:00
Diego Mello 53ceaf858b [NEW] Room Loading(#372)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->

<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
2018-07-18 17:34:59 -03:00
Diego Mello 2e245e4d7c Image upload improvements (#368)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->
- [x] Crop image
- [x] Type image description (like web)
- [x] Show upload progress
- [x] "Try again" in case of error
- [x] Cancel upload while in progress
- [x] [Android] Zoom on photos

<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
![image](https://user-images.githubusercontent.com/804994/42526934-a12da304-844d-11e8-8668-f3d69369726a.png)
![image](https://user-images.githubusercontent.com/804994/42527829-297945fe-8450-11e8-9f0e-9e668dd33043.png)
2018-07-17 16:10:27 -03:00
Diego Mello 224c421b69 Switch push notification lib (#346)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->
Closes #342 

<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
2018-07-10 10:40:32 -03:00
Diego Mello 8af34a705a Update gradle and targetSdkVersion (#328)
* Changed the way we read RocketChat settings since setting.type won't be returned from server anymore

* Permissions

* Unnecessary action sheet render

* Update gradle

* Switched testServer to use blob

* RoomsListHeader search fixed

* Runs loadMessagesForRoom only if room has at least 20 rows

* - Logout if user's token expired
- Removed update avatar logic
- Profile dialog border on android

* - Animations disabled
- CircleCI set

* Tests updated

* "eventType argument is required" fix
2018-06-20 10:40:33 -03:00
Diego Mello 9e4ca34a80 Settings/Permissions improvements (#325)
* Changed the way we read RocketChat settings since setting.type won't be returned from server anymore

* Permissions

* Unnecessary action sheet render
2018-06-18 10:30:36 -03:00
Diego Mello da173275ce [NEW] User Profile (#323)
* Drawer layout

* Drawer changes

* Profile

* Profile avatar

* Set language

* Tests

* Custom fields

* Readme updated

* fix invalid user muted value

* Fix for "Cannot add a child that doesn't have a YogaNode to a parent without a measure function! (Trying to add a 'RCTVirtualText' to a 'RCTView')"
2018-06-12 22:33:00 -03:00
Diego Mello 22cbcf0b40 Unread and date separator layout improved (#319)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->
- [x] Unread and date separator layout
- [x] "Start of conversation"/"Loading messages" label

![screen shot 2018-05-30 at 18 10 43](https://user-images.githubusercontent.com/804994/40747867-0424964a-6435-11e8-9293-31cc43c110ab.png)
![screen shot 2018-05-30 at 18 09 05](https://user-images.githubusercontent.com/804994/40747868-04484784-6435-11e8-8c31-92e0776276f0.png)



<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
2018-06-01 14:56:59 -03:00
Diego Mello 466a57e6b1 I18n (#312) 2018-06-01 14:38:13 -03:00
Diego Mello 061c313e3f [NEW] Broadcast channels (#301)
* Broadcast channels

* e2e tests
2018-05-24 17:17:45 -03:00
Guilherme Gazzo 182ab69d6f
Detox tests E2E (#283) 2018-05-23 10:39:18 -03:00
Diego Mello 2b172b359e Deep linking fix and more (#294)
* Fix - Any https link was deep linking to RocketChat

* Keyboard dismiss after add new server

* Room info bug fix

* Opacity animation

* Navigation when adding server fixed

* Throttle for unnecessary render on receiving several messages

* Search inputs without autocorrect and autocapitalize

* Search messages fixed

* Messagebox unnecessary render and spotlight fixed

* react-native-keyboard-input updated
2018-05-18 14:55:08 -03:00
Diego Mello 69513a8327 Deep linking (#291)
* deep linking

* Basic deep link working

* Deep link routing

* Multiple servers working

* Send user to the room
2018-05-07 17:43:26 -03:00
Guilherme Gazzo 557e485613
Beta (#265)
* Fabric iOS

* Fabric configured on iOS and Android

* - react-native-fabric configured

- login tracked

* README updated

* Run scripts from README updated

* README scripts

* get rooms and messages by rest

* user status

* more improves

* more improves

* send pong on timeout

* fix some methods

* more tests

* rest messages

* Room actions (#266)

* Toggle notifications

* Search messages

* Invite users

* Mute/Unmute users in room

* rocket.cat messages

* Room topic layout fixed

* Starred messages loading onEndReached

* Room actions onEndReached

* Unnecessary login request

* Login loading

* Login services fixed

* User presence layout

* ïmproves on room actions view

* Removed unnecessary data from SelectedUsersView

* load few messages on open room, search message improve

* fix loading messages forever

* Removed state from search

* Custom message time format

* secureTextEntry layout

* Reduce android app size

* Roles subscription fix

* Public routes navigation

* fix reconnect

* - New login/register, login, register

* proguard

* Login flux

* App init/restore

* Android layout fixes

* Multiple meteor connection requests fixed

* Nested attachments

* Nested attachments

* fix check status

* New login layout (#269)

* Public routes navigation

* New login/register, login, register

* Multiple meteor connection requests fixed

* Nested attachments

* Button component

* TextInput android layout fixed

* Register fixed

* Thinner close modal button

* Requests /me after login only one time

* Static images moved

* fix reconnect

* fix ddp

* fix custom emoji

* New message layout (#273)

* Grouping messages

* Message layout

* Users typing animation

* Image  attachment layout
2018-04-24 17:08:17 -03:00
Diego Mello 6d0e8e50cc Bug fixes (#261)
* Layout fixes

* RoomsListView's SafeAreaView

* Unhandled promise rejection fix

* Prevent navigation from opening scenes twice

* Create channel fixes
2018-04-10 10:03:54 -03:00
Diego Mello 17ecd5c9af Crashlytics (#258)
* Fabric iOS

* Fabric configured on iOS and Android

* login tracked

* more logs

* fix reaction
2018-04-03 13:24:58 -03:00
Diego Mello 5d8ad1df82 [NEW] Room info and Room info edit (#254)
* - Block user
- Load room members async
- fixed reactive change of room's read only flag

* Snippet messages

* - Room files
- Dismiss Video component on back button press
- Improvements on Image component

* Improvement on Video component

* Leave room

* Missing message types

* lint

* - Room info (read only)
- Missing message types

* Room info scroll

* - Tap on room header opens room info
- Layout tweaks

* - Room info edit
- iOS Toast fixed

* - Style not implemented actions as disabled

* Edit room permission

* - Save all room settings in a single call
- Implemented roomType and readOnly

* - Allow reacting when room is read only

* Message type added: room_changed_privacy

* Erase room

* Created TextInput and SwitchContainer components for reuse and readability

* - hasPermission method

* - Archive/Unarchive room
- Set Join Code

* Twitter keyboard type on iOS

* Archived room

* reactWhenReadOnly permission on message

* Active users refactored

* User roles

* - Subscribe to roles (in order to get role description info: e.g. 'core-team' to 'Rocket.Chat Team')
- Save roles to realm (for offline access)
- Save roles to redux (and get data from realm on app init)

* Lint

* code style
2018-03-29 17:55:37 +00:00
Diego Mello 5443a15f0a [NEW] Room actions: block user, snippet messages, room files and leave room (#250)
* - Block user
- Load room members async
- fixed reactive change of room's read only flag

* Snippet messages

* - Room files
- Dismiss Video component on back button press
- Improvements on Image component

* Improvement on Video component

* Leave room

* Missing message types

* lint
2018-03-23 16:49:51 +00:00
Guilherme Gazzo 9e3714758f
[WIP] Improves (#245) 2018-03-02 21:31:44 +00:00
Diego Mello 4823e3a2e4 [NEW] Room actions: Mentioned messages and Room Members (#242)
* Mentioned messages

* Starred and pinned actions debounce

* Room members

* Open room on member touch
2018-03-02 15:11:34 +00:00
Diego Mello b1bb815b07 Room actions (#231)
* Layout


* Empty starred list


* Favorite room

* Pinned messages

* fix last messages

* fix date on pinned messages
2018-02-19 16:19:39 -05:00
Guilherme Gazzo 9e1b37be11
[NEW] lastmessage (#236)
* attempt to add last message

* Custom emoji

* status
2018-02-16 16:34:25 -02:00
Diego Mello ed5a1386e0 Improvements on emoji picker / message box (#227)
* Emoji keyboard

* Keyboard emoji working

* animation and flatlist

* fix

* Unread separator animation

* easeInEaseOut animation
2018-02-08 12:08:50 -02:00
Diego Mello 9ea5c1b765 Reactions (#214)
* * Tracking emoji
* Fixed users/rooms regex tracking

* Autocomplete emoji

* Toggle reaction

* 'User have reacted' style

* Show who have reacted onLongPress

* Vibration onLongPress
2018-01-30 17:48:26 -02:00
Diego Mello 153cfecab5 Keyboard dismiss (#219)
* Fix keyboard scroll

* * Input resize
* Touchable input

* keyboard dismiss

* Remove unnecessary emoji picker when it's not in use
2018-01-30 13:07:09 -02:00
Diego Mello 037caf5e17 Message box issues (#218) 2018-01-25 12:04:20 -02:00
Diego Mello c81182c9cf Read only room (#198)
* Reactive read only
2018-01-17 14:42:30 -02:00
Diego Mello d3acc17fc1 Unread separator and Date separator (#154) 2018-01-16 18:27:57 -02:00
Diego Mello 0636fd0266 Emoji picker (#185)
* Emoji picker working

* Gif support on Android
2018-01-16 16:48:05 -02:00
Martin Schoeler ec1782e504 [FIX] Unread not going away when receiving a message from inside a room (#194)
* Fix Unread inside Room
2018-01-15 16:44:20 -02:00
Guilherme Gazzo 7a1d359a4f
Test improve render (#159)
[NEW] ListView
2018-01-09 15:12:55 -02:00
Diego Mello b9ca7abb52 [WIP] Abstract database calls (#157)
* Databases separated
2017-12-27 13:22:06 -02:00
Diego Mello 157b85c2cb Mention autocomplete (#150)
* Mentions working
2017-12-20 18:14:07 -02:00
Diego Mello 7ea98f1337 Delete/resend message (#136)
* Fixed temp message

* Delete/resend working

* Edit message fixed
2017-12-13 13:00:26 -02:00
Diego Mello c84c5a3565 Header redesign (#133)
* Search

* Custom search on iOS and Android
2017-12-08 17:13:21 -02:00