Commit Graph

123 Commits

Author SHA1 Message Date
Diego Mello c2497145fc
[FIX] Swipe animations (#1044)
* Comment removeClippedSubviews

* Comment width animation

* Remove redux from RoomItem

* Fix wrong re-render comparison

* Remove listener

* Raise minDeltaX

* memo actions

* Spring with native driver

* Refactor functions

* Fix props issues

* Remove RoomItem.height

* Long swipe

* Refactor animations

* this.rowTranslation -> this.transX

* Moved state to this

* Fix favorite button
2019-07-15 13:54:28 -03:00
Diego Mello b444c425d2
[FIX] Rooms swipes (#1034)
* Regression: on press style feedback

* Action button styles

* Fix animations

* Styles changed

* Update subscription without having to wait for socket

* Calculate width on RoomsListView instead
2019-07-04 13:15:30 -03:00
pranavpandey1998official 47676c2286 [NEW] Room swipe actions: mark as read/unread, hide, fav (#976)
* added unread and fav feature

* changed the layout

* fix jest

* done requested changes

* added requested changes
2019-07-01 11:20:38 -03:00
Djorkaeff Alexandre 255ea84599 [IMPROVEMENT] Share credentials with Rocket.Chat.iOS (#982)
*  Create user table

*  Introduce user table

* 🔥 Remove unused table

*  Add userdefaults to storage data

* 💚 Fix android build

*  Get credentials from iOS native client

* 🔥 Remove unused code

*  Revert sign xcode

* 🐛 Fix first login-logout

* 🎨 Use constants to UserDefaults Keys

* 🐛 Fix clear server-user-info on logout

* 🐛 Fix filter null value

* 🚑 Remove user object in logout

*  Fix get servers from native-client

* 🚑 Fix error on change server
2019-06-26 16:50:03 -03:00
Diego Mello 319630949e
[FIX] Cancel ongoing tasks on server change (#984)
* Fork selectServer and loginSuccess

* Fork tasks on login

* Refactor

* Remove room sub and requests on logout

* Comment room header disabled rule

* Check server on rooms stream

* Uncomment disabled props

* Fix updating state

* Comment last fetch user presence date
2019-06-17 10:57:07 -03:00
Diego Mello b7e6d3615f
[NEW] Directory and Federation (#967)
* Initial

* Search working

* Refactor layout

* Layout and search working

* Navigate

* Remove inline styles and fix i18n

* Federation setting

* Missing i18n

* Fix android style

* Refactor
2019-06-10 13:22:35 -03:00
Diego Mello 27de8c1f84
[REGRESSION] Get rooms on app restore (#958) 2019-06-05 10:39:12 -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 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 2f25b10681
[Regression] Search stopped working on Android after LastMessage refactor (#851) 2019-04-26 09:14:30 -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 eb4b1553bf
[FIX] Fix null native Messagebox component object (#680)
* Fix null native Messagebox component object

* [iOS] Fix header alignment

* Remove unused files
2019-03-06 10:27:40 -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 f3ddf60a57
Remove drawer (#653)
* Remove drawer (layout needs to be changed in future releases, though)
* Don't navigate outside on logout if there's other logged server
* Update react-native-navigation
2019-02-27 11:26:40 -03:00
Diego Mello db0cd5abd1
Updating room indicator (#609)
Shows "Updating..." when requesting rooms from Rest API.
2019-02-07 14:13:21 -02: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 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 17da7ac09c
Chats: Don't show group header if none of the filters is selected (#560) 2018-12-06 10:53:20 -02:00
Diego Mello a2821af95b
Use Rest API calls (#558) 2018-12-05 18:52:08 -02:00
Diego Mello e66dbd8ca3
[FIX] Android stuck on splash screen after hardware back button is pressed (#550)
* [FIX] Android stuck on splash screen after hardware button is pressed

* Fix empty user at asyncstorage

* Remove unused subscribe
2018-11-27 17:40:53 -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 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 ed1988d64d
[FIX] Logout (#497)
* [FIX] Logout

* Removed realm instances on rooms list
2018-10-18 14:56:49 -03:00
Diego Mello e4faa73b68
[FIX] Unread rooms group order (#487) 2018-10-16 17:28:04 -03:00
Diego Mello 2d7360f077
Connecting to DDP badge (#471) 2018-10-02 09:33:21 -03:00
Diego Mello 2642a9e808
[FIX] Search rooms (#468) 2018-09-28 17:17:49 -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 46f155d728
[NEW] Use community JSC for Android (#450)
* [NEW] Use community JSC for Android

* Quick fix on unread chats
2018-09-19 14:08:41 -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 849de55604
[FIX] Drawer navigation won't refresh chats (#432) 2018-09-13 17:40:03 -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 92cedf76c1
[FIX] Missing current server (#427)
* server.current removed

* Increased area of touch on header

* Hide search when sort dropdown is tapped

* default server icon url

* 1.1.1
2018-09-05 15:15:03 -03:00
Diego Mello 101d4c727c
Sort/group rooms local only (#425)
* Update android api from ci

* Sort local only
2018-09-04 11:29:20 -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 dc6d60b28e
[NEW] Rooms list layout (#413)
* 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
2018-08-31 13:46:33 -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 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 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 466a57e6b1 I18n (#312) 2018-06-01 14:38:13 -03:00
Diego Mello 8f90565e55 RoomsListView re-render (#304)
<!-- 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] Removed unnecessary re-renders on RoomsListView
2018-05-24 17:17:00 -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
Diego Mello 96914f3869 Fabric and image fix (#284)
* Fixed images not showing

* Keyboard libs updated
2018-04-26 14:33:43 -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 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
Guilherme Gazzo 9e3714758f
[WIP] Improves (#245) 2018-03-02 21:31:44 +00:00
Diego Mello 477609375c [NEW] OAuth (#241)
* Layout

* tmp

* test iscordova

* Webview redirecting

* Open and Close login actions

* Login services saved on redux

* OAuth Github

* Server regex fix

* OAuth modal style

* - Twitter login
- Remove services from redux
- Open login saga fix

* - Facebook login
- Fixed user agent
- Reactions fix
- Message url unique key fix

* Google login

* Email keyboard removed from messagebox

* - Login buttons refactored
- RoomList header

* Layout improvements

* Meteor login redirect_uri changed

* fix

* Random credentialToken state
2018-02-23 17:29:05 -03:00
Guilherme Gazzo bb5e29fdc7
fix last messages (#239)
* fix last messages
2018-02-19 16:15:31 -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 b9ca7abb52 [WIP] Abstract database calls (#157)
* Databases separated
2017-12-27 13:22:06 -02:00
Diego Mello c84c5a3565 Header redesign (#133)
* Search

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