Commit graph

2212 commits

Author SHA1 Message Date
Elias Nahum
ebd31e0835
MM-25694 Disallow profile picture update is set by LDAP (#4377) 2020-06-02 12:04:28 -04:00
Elias Nahum
293470ff94
Handle SSO redirecting to a different URL than specified by the user (#4372)
* Handle SSO redirecting to a different URL than specified by the user

* Set Server URL based on the last redirect

* Improve last redirect condition
2020-06-01 14:06:37 -04:00
Miguel Alatzar
9b03f66e6e
[MM-24068] Animate top bar height/padding (#4370)
* Animate top bar height/padding

* Update import order
2020-06-01 10:03:58 -07:00
Amit Uttam
d869ddf8e5
MM-24029 Fix date re-selection on search bar (#4368)
Picking a new date string (tapping a date on the autocomplete calendar) to replace an already populated date string in the search bar, leaves the search text garbled. This was because of incorrect handling of the tap cursor position in the search box.
2020-05-29 13:29:25 -03:00
Miguel Alatzar
023432e2f4
Fix sidebar search bar (#4350) 2020-05-28 09:35:34 -07:00
Amit Uttam
73da13fa66
MM-24201 List joinable teams alphabetically (#4365)
Matches webapp behaviour.
2020-05-28 13:18:51 -03:00
Amit Uttam
3d1a647263
[MM-24501] Load all (including joinable) teams when resetting app state (#4362)
* MM-24501 Load all (joinable) teams when resetting app state

The subsequent `loadMe` only fetches a user's already-joined teams, which doesn't populate `state.entities.teams.teams` with the entire set of teams available, including potentially joinable teams.

Fixes https://github.com/mattermost/mattermost-mobile/issues/4209

* Add names to batched team action groups
2020-05-28 13:15:30 -03:00
Elias Nahum
81a4bb39ca
MM-21605 Remove border to login option buttons (#4354)
* Remove border to login option buttons

* Remove email login option color for O365
2020-05-28 11:58:35 -04:00
Elias Nahum
ee05367cae
MM-25562 Fix dismiss reaction list crash (#4353) 2020-05-27 12:45:35 -04:00
Elias Nahum
d100d646f2
Bump upload timeout to 1 min (#4345) 2020-05-27 12:42:56 -04:00
Elias Nahum
547ac860b7
Invalidate versions for iOS (#4349) 2020-05-27 10:49:33 -04:00
Elias Nahum
43f1e5113c
MM-25510 Increase post options long press delay to 200ms (#4346)
* MM-25510 Increase post options long press delay to 250ms

* Set delay to 200ms
2020-05-26 19:45:30 -04:00
Elias Nahum
1568e08055
MM-25470 Fix emoji autocomplete results (#4344)
* Fix emoji autocomplete results

* Rename selectors with "select" prefix
2020-05-26 16:03:11 -04:00
Miguel Alatzar
5d1520ab3c
Add calls to Client4.savePreferences (#4341) 2020-05-26 09:29:50 -07:00
Elias Nahum
cef36502c5
MM-24895 fetch roles if needed and add team member to the store when joining a new team (#4330) 2020-05-26 09:05:43 -04:00
Elias Nahum
3a3be0e40c
MM-24964 select server url correctly animate error with keyboard (#4333) 2020-05-22 15:42:24 -04:00
Elias Nahum
65205258d2
MM-24932 Bold LHS active channel manually marked as unread (#4332) 2020-05-22 15:39:15 -04:00
Elias Nahum
0b3c91dd81
MM-25434 Fix switch team badge cut off (#4331) 2020-05-22 10:47:35 -07:00
Miguel Alatzar
6053c7fe42
Apply background style for Android as well (#4326) 2020-05-22 11:35:37 -04:00
Miguel Alatzar
12a913b499
Update control icon style (#4325) 2020-05-22 11:35:21 -04:00
Miguel Alatzar
4178816350
Incrase redux-persist timeout to 1 min (#4322) 2020-05-21 14:04:08 -07:00
Elias Nahum
a91e257f55
Fix overflow of searchbar for iOS in Landscape (#4312) 2020-05-20 23:34:16 -04:00
Elias Nahum
a9763c7480
Do not preload images with FastImage (#4314) 2020-05-20 15:47:06 -04:00
Miguel Alatzar
93f519c8fc
Handle MFA error in MFA screen (#4308) 2020-05-20 08:28:14 -07:00
Harrison Healey
c7ef3fe1d3
MM-22155 ESLint configuration updates part 1 (#4311)
* MM-22155 Disable no-undefined

* MM-22155 Disable react-jsx-filename-extension

* MM-22155 Disable no-magic-numbers

* MM-22155 Re-enable camelcase

* MM-22155 Re-enable no-nested-ternary

* Update no-unused-vars to match other repos
2020-05-20 08:27:27 -07:00
Elias Nahum
81fb199feb
Allow interaction when the in-app notification is shown (#4295)
* Allow interaction when the in-app notification is shown

* Wrap in gesture HOC only for Android

* Set height and remove flex for android in-app notifications gesture hoc

Co-authored-by: Miguel Alatzar <this.migbot@gmail.com>
2020-05-19 15:54:47 -07:00
Elias Nahum
012eb08fde
Fix infinite skeleton in different use cases and do not scroll to messages already seen (#4304)
* Fix infinite skeleton in different use cases

* Apply suggestions from code review

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>

* Update app/utils/teams.js

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-05-19 18:54:34 -04:00
Elias Nahum
c04c1f26f7
Do not schedule session expiry notification for 5.24+ (#4291) 2020-05-19 12:15:45 -04:00
Miguel Alatzar
a819cce708
[MM-24642] Sidebar fixes (#4286)
* Fixes to height and padding

* Add underlayColor

* Rename to index

* Revert height change for overflow change

* Increase toValue

* Update Android offset
2020-05-18 16:31:11 -07:00
Elias Nahum
d3a6e166ad
MM-15758 Update dependencies including Fastlane (#4272)
* Update dependencies including Fastlane and disable Flipper on iOS

* Remove EventEmitter for previous doc-viewer

* Fix android crash when setting more channels buttons

* Downgrade fuse.js

* Upgrade deps to latest

* Update Podfile.lock

* Downgrade RNN to 6.4.0

* QA Review #2

* Upgrade fuse.js to 6.0.0
2020-05-18 11:24:47 -07:00
Andre Vasconcelos
a0841e0ef1
MM-24497 Ensuring quick reactions render within safe area (#4235)
* Ensuring quick reactions render within safe area

* Added modifier to align paddings

* Updating snapshots
2020-05-14 22:10:15 -04:00
Elias Nahum
c0a763e9e0
Set previous app version on persist store migration (#4294) 2020-05-13 19:24:44 -03:00
Elias Nahum
1ae5584cb1
MM-24115 Use Native + BuiltIn emojis instead of systemEmojis (#4274)
* MM-24115 Use BuiltInEmojis instead of systemEmojis

* Address QA found issues
2020-05-13 18:23:47 -04:00
Elias Nahum
36e55c95a2
MM-23570 Migrate from Segment to Rudder (#4293)
* Replace Segment with Rudder (ios not working)

* Update @assets reference and fix tests
2020-05-13 16:54:07 -04:00
Elias Nahum
e50fa1d85b
MM-24973 Prevent search input to take full screen on Android landscape (#4283) 2020-05-13 10:12:53 -04:00
Jesús Espino
6b6a685909
Using new getKnownUsers api to cleanup the users on leave channel (#4220)
* Using new getKnownUsers api to cleanup the users on leave channel

* Fixing tests

* Addressing PR comments

* Removing unnused variables

* Fixing proptypes annotation

* Addressing PR review comments

* Fixing minimun version check

* Changing the import to use

* Adding tests for version check

* Addressing PR review comments

* Small change to no change accidentaly the previous behavior

* Adding small fix proposed by Elias
2020-05-11 13:19:38 -03:00
Miguel Alatzar
94bdd8e430
Ensure currentChannel set (#4288) 2020-05-11 12:12:01 -03:00
Amit Uttam
ee5d336190
[MM-18642] Notify on server certificate trust problems when connecting (#4282)
* MM-18642 Notify user on server certificate trust problems

Presents a new alert specific to SSL connection/certificate trouble on the server, when pinging.

* Change Alert title (PR review)
2020-05-08 19:58:43 -07:00
Farhan Munshi
901f31ec4b
[MM-24891] [MM-24572] Add ability to specify default value when role not found for selector (#4277)
* MM-24891 Allow permissions to have defaults set in case where roles not in state

* MM-24891 Add tests for haveIPermission

* MM-24891 Apply the defaults to more channel permission checks
2020-05-08 14:19:33 -04:00
Miguel Alatzar
879e604bbf
Ensure receivedPosts runs first (#4281) 2020-05-08 08:08:22 -07:00
Amit Uttam
42f93769b1
Revert "MM-24113 Support 'leave' slash command (#4273)" (#4279)
This reverts commit fd450f9988.
2020-05-07 14:40:54 -03:00
Amit Uttam
fd450f9988
MM-24113 Support 'leave' slash command (#4273)
Fixes crash on Android when attempting to redirect back to a read-only channel (default channel) after using the `/leave` command.

Also, enables official support of `leave` slash command. Added as auto-complete suggestion.
2020-05-07 13:58:09 -03:00
Miguel Alatzar
65314fae47
[MM-24706] Use cache only for http URIs (#4257)
* Use cache only for http URIs

* Style fixes

* No need for cache prop

* Remove redundant absolute positioning

* Cap at two lines
2020-05-06 19:30:42 -07:00
Amit Uttam
67fa7aeb53
[MM-24061] Bring back channel sidebar hamburger icon for tablets (#4244)
* MM-24061 Bring back channel sidebar hamburger icon for tablets

* Remove channel sidebar icon for iPads

iPads run with a "persistent" sidebar already.

* Better conditional logic from PR review + tests

* Test tidying from PR review
2020-05-06 22:19:31 -03:00
Elias Nahum
1a605891fe
MM-22401 Refactor Post Draft (#4122)
* Babel TS and Eslint config

* Channel is archived component

* Move Typing component

* Move Uploads component

* Add PostInput component

* QuickActions components

* Add PostDraft component

* Remove old PostTextbox component

* Rename post_textbox constant

* Fix Autocomplete

* Rename blur post draft event

* Fix references

* Feedback review

* Fix autocomplete for iOS
2020-05-06 06:30:51 -04:00
Elias Nahum
597e03a6bc
MM-24852 ensure only one listener for in-app notification is registered (#4267) 2020-05-05 18:56:58 -04:00
Miguel Alatzar
86737a70c6
[MM-24639] Set rehydrated values to true on store cleanup. (#4258)
* Set rehydration values to true on clean up

* Remove extra line

* Update app/store/middlewares/helpers.js

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>

* Fix setting of views.root.hydrationComplete

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-05-05 18:16:49 -04:00
Amit Uttam
4d391c36a0
Serialize/Deserialize state as string in store, instead of map (#4253)
* Serialize/Deserialize state as string in store, instead of map

To see if this positively impacts performance lag issues (channel sidebar opening, etc.)

* Update app/store/mmkv_adapter.ts

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>

* Update app/store/mmkv_adapter.ts

* Typescript fixes

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Miguel Alatzar <this.migbot@gmail.com>
2020-04-30 11:17:58 -07:00
Miguel Alatzar
454973ecbd
Revert "Disable loadUnreadChannelPosts (#4245)" (#4251)
This reverts commit 8de77754ef.
2020-04-30 08:57:12 -07:00
Miguel Alatzar
8de77754ef
Disable loadUnreadChannelPosts (#4245) 2020-04-29 11:52:53 -07:00
Andre Vasconcelos
64a2de8243
Fixing improper padding of searchBar container (#4212)
* Fixing improper padding of searchBar container

* Ensures leftComponent is hidden after animation
2020-04-29 17:26:57 +08:00
Elias Nahum
9af108026e
MM-24285 Use FastImage instead of Image (#4218)
* Enable ESLint no-unused-vars

* Use FastImage instead of Image

* Update fast-image patch to support multiple cookies

* Fix ESLint errors

* Have jest run timers for post_textbox tests

* Feedback review

* Update snapshots
2020-04-28 23:23:39 +08:00
Amit Uttam
35bb4b6b28
[MM-24463] Run message retention cleanup off of pre-existing state (#4222)
* MM-24463 Run message retention cleanup off of pre-existing state

Instead of a reconstructed "zero" state.

Only posts in channels, searched posts and flag posts are recalculated (as per data retention policy, if applicable). The rest of state is cloned from existing state.

* Mark hydrationComplete only if _persist state is undefined

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-04-27 13:27:21 -03:00
Miguel Alatzar
fe2c6a4147
Wrap screen in gestureHandlerRootHOC (#4137)
* Wrap screen in gestureHandlerRootHOC

* Trigger ci
2020-04-27 13:25:30 -03:00
Andre Vasconcelos
31052a7d53
Fixing padding of searchbar in search screen (#4223) 2020-04-27 12:20:15 -03:00
Elias Nahum
798efbd57f
MM-22089 set default prevent double tap to 1s for ChannelInfo modal (#4133)
* MM-22089 set default prevent double tap to 1s

* Increase tap debounce delay for ChannelInfo modal action

Co-authored-by: Amit Uttam <changingrainbows@gmail.com>
2020-04-27 10:04:58 -04:00
Elias Nahum
f94c09d54e
MM-24451 Set prev app version to current on logout/reset cache (#4225)
* MM-24451 Set prev app version to current on logout/reset cache

* Fix unit tests for master
2020-04-24 11:07:08 -07:00
Elias Nahum
cc4abdde2f
MM-24446 Fix Crash on iOS with EMM enabled (#4203)
* Fix Crash on iOS with EMM enabled

* Fix Android Passcode authentication

* Fix Login screen header when EMM does not allow other servers
2020-04-23 06:03:10 -04:00
Elias Nahum
3a302eaae7
MM-24385 Fix ExperimentalStrictCSRFEnforcement (#4207) 2020-04-23 06:01:20 -04:00
Miguel Alatzar
135dc8c9bd
[MM-24426] [MM-24451] Set previous app version in redux store (#4197)
* Set previous app version in redux store

* Handle setting previousVersion on login and clearing data

* Set previous version on logout instead

* Remove action arg
2020-04-23 05:42:35 -04:00
Rahim Rahman
b5ef54527f
added isLandscape (#4188) 2020-04-22 18:48:51 -07:00
Mario de Frutos Dieguez
3de2b29570
Fix infinite loop retrieving post files (#4192)
* Fix infinite loop retrieving post files

Right now if all the attachments of a post are removed the component
update code enters into an infinite loop because the comparison between
arrays always return false.
2020-04-22 19:25:34 +02:00
Miguel Alatzar
9a97f91735
Check canPost permissions for v5.22+ (#4193) 2020-04-22 20:10:46 +08:00
Jason Blais
bf3fbbc363
Fix typo in telemetry entry (#4134)
See contribution that fixes this in the Redux repo: https://github.com/mattermost/mattermost-redux/pull/1116
2020-04-20 09:37:11 +08:00
Miguel Alatzar
cd8c627dc3
Fix headers when preloading images (#4165) 2020-04-16 18:43:51 -07:00
Elias Nahum
0c7a2c6fa1
Correctly load file attachment images (#4160)
* Correctly load file attachment images

* Remove cache control from gallery
2020-04-16 16:24:28 -04:00
Elias Nahum
fda4948c8c
MM-23848 consolidate store, upgrade mmkv and fix logout (#4145)
* MM-23848 consolidate store, upgrade mmkv and fix logout

* Feedback review

* Add store.ts to modulesPath
2020-04-16 09:02:47 -04:00
Elias Nahum
aaa571db32
Upgrade to RN 0.62.2 (#4093)
* Upgrade to RN 0.62.0

* Update packager module paths

* Fix Android PasteableInput

* Fix regression on Android share extension credentials needed

* Update android/app/src/main/java/com/mattermost/rnbeta/RNPasteableEditTextOnPasteListener.java

* Reject commit if TSC check fails and Fix small eslint issues automatically

* Use super.getExportedCustomBubblingEventTypeConstants in RNPasteableTextInputManager

* Update to rn 0.62.2

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-04-14 16:39:51 -04:00
Elias Nahum
4ad4b3b103
Validate previous app version (#4151)
* Validate previous app version

* Update snapshot and fix typo in constant
2020-04-14 13:22:43 -04:00
Miguel Alatzar
8b2d9a10f5
Ensure postProps is not null/undefined (#4150) 2020-04-14 11:38:34 -04:00
Miguel Alatzar
22a13cfee0
[MM-24026] Set back button color (#4138)
* Set back button color

* Update unit test
2020-04-13 10:44:44 -07:00
Elias Nahum
6667962e1f
MM-24093 Fix crash when system message does not contain a username in post props (#4143) 2020-04-13 11:44:22 -04:00
Elias Nahum
f6defc8cc6
Fix isDateLine function to check for null and undefined (#4142)
* Fix isDateLine function to check for null and undefined

* use optional chaining instead

Co-Authored-By: Amit Uttam <changingrainbows@gmail.com>

Co-authored-by: Amit Uttam <changingrainbows@gmail.com>
2020-04-10 20:19:43 -04:00
Miguel Alatzar
514f6a68d7
Don't subtract from badge count (#4135) 2020-04-09 11:18:54 -07:00
Elias Nahum
1486a55aeb
MM-22041 Fix Keyboard flashing when entering keyboards screen (#4132)
* MM-22041 Fix Keyboard flashing when entering keyboards screen

* Update snapshots
2020-04-09 06:10:46 -04:00
Elias Nahum
9d0209fce6
MM-22043 Render Channel purpose message without markdown (#4131) 2020-04-09 06:08:15 -04:00
Elias Nahum
c64581ef16
MM-22683 use webhook override_username instead of webhook creator on commented on post header (#4130) 2020-04-09 06:07:46 -04:00
Elias Nahum
be6b1ff83f
MM-22198 Don't show commented on for post on the same thread after a date separator (#4129) 2020-04-09 06:07:14 -04:00
shred86
c07e8fb8d3
[MM-23584][MM-23675] Add first and last name to user profile view & language support (#4092)
* Add name to profile view

* Add first and last name fields

* Styling update

* Update snapshot

* Add language support and change ordering
2020-04-09 06:05:01 -04:00
Miguel Alatzar
7afa9aed01
[MM-23698] [MM-19559] Remove redux-offline and updated redux-persist (#4120)
* Remove redux-offline and configure redux-persist

* Fix typo

* Fix configure store

* Upgrade to redux-persist 6.0.0

* Add migration from redux-persist v4 to v6

* Replace AsyncStorage with MMKVStorage to boost storage speed

* Mock RNFastStorage

* Fix reactions test

* Fix clearing the store on logout

* Remove the need for LOGOUT_SUCCESS

* No need to pass persistConfig to middlewares()

* Remove unused imports

* Export connection

Accidentally removed this export.

* Add batch action name

Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>

* Add batch action name

Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>

* Add batch action name

Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>

* Add batch action name

Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>

* Fix delete post

* Fix leave channel

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-04-08 13:44:54 -07:00
Miguel Alatzar
8bb43ca4c2
[MM-22632] Set vertical padding for SlashSuggestionItemi (#4125)
* Set minHeight

* Replace minHeight with paddingVertical
2020-04-08 11:08:59 -04:00
Miguel Alatzar
7bee5c368a
Always show expand button (#4121) 2020-04-07 13:52:59 -03:00
Miguel Alatzar
4e3e557519
Dismiss keyboard on edit post close (#4110)
* Dismiss keyboard on edit post close

* Don't use edit post request

* Focus on error
2020-04-07 09:50:35 -07:00
shred86
717350adc6
[MM-23755] Add nickname as searchable property (#4099)
* Add nickname search functionality

* Add username property to test

* Fix parentheses out of place

* Add nickname property to additional tests

* Added ability to truncate long names

* Minor clean up

* More minor clean up
2020-04-06 17:48:06 -04:00
RAKESH PEELA
f4d5f4dcaf
Update more unreads button to new design (#4101)
* update `more unreads` button to new design

* update More Unreads button with UI suggestions

* fix lint issues
2020-04-02 18:42:49 -03:00
Miguel Alatzar
754d794dae
Don't pre-fetch posts for unread archived channels (#4113) 2020-04-02 18:40:18 -03:00
Elias Nahum
8522b70851
Tweak post list numbers (#4105) 2020-04-02 14:40:02 -03:00
Amit Uttam
605c90ce61
Remove duplicated websocket client & constants (#4111)
* Remove duplicated websocket client & constants

Defunct code originally maintained in mattermost-redux, but not used in mobile, in favour of https://github.com/mattermost/mattermost-mobile/blob/master/app/client/websocket.ts

* PR review: Remove redundant reference to constants

* Remove deleted files from modules list
2020-04-02 13:57:17 -03:00
Miguel Alatzar
1398a4ea0f
Correctly add additional actions (#4108) 2020-04-01 19:10:27 -07:00
Miguel Alatzar
5346c574e2
Fix mm-redux imports (#4109) 2020-04-01 20:04:39 -03:00
Andre Vasconcelos
d03d504d00
MM-14038 Access recent reactions from the long press menu (#4058)
* WIP: Implementing quick reaction functionality

* Making closing animations smoother

- Added haptic feedback + timeouts for a smooth flow

* Fixing clipping of post options on android

* updating snapshots

* Refactoring code & fixing styles

- Fixed paddings element sizes to comply with design specs
- Replaced reaction image to one with a higher resolution
- Made sizes of emojis to be conditional on deviceWidth

* Apply suggestions from code review

* Adding component to avoid extra re-renders

* Refactoring function call in reaction_button

Am ashamed i didn't catch this before pushing the rest

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-04-01 12:56:49 -07:00
Amit Uttam
725992941c
[MM-23490] Save state to file via async middleware vs store subscription (#4059)
* MM-23490 Save state to file via async middleware vs store subscription

Currently for iOS, a subset of store state is saved to an on-device file, so that the Share Extension can have access to information it needs (teams and channels) to function.

This file saving would happen via a store subscription which triggers a file save for every dispatched action. By moving this logic to a middleware function, when this function gets invoked is now limited to a configurable set of action dispatches. (e.g. `LOGIN`, `CONNECTION_CHANGED`, `WEBSOCKET_SUCCESS`), etc.

* MM-23493 Move app cache purge from store subscription to middleware (#4069)

* MM-23493 Move app cache purge from store subscription to middleware

This commit exposes persistence configuration as a static reference, so that cache purging can be invoked on demand anywhere else in the codebase.
While middleware still may not be the best spot for this singular "action", existing functionality (reacting to `OFFLINE_STORE_PURGE`) is maintained.

The change also removes the need for `state.views.root.purge` to exist in the state tree.

* PR feedback: Inject config dependency for purging app cache

Previously, `middleware` imported the config back from `store` (i.e. cyclic import).

* PR feedback: No need to export config, now that it's passed as argument

* Fix tests after refactoring middleware call from array -> function

* PR feedback: Let parent continue to pass down initial store state
2020-03-31 20:01:13 -07:00
Miguel Alatzar
1079498461
[MM-23708] Send HW key pressed event only when a HW keyboard is connected (#4100)
* Check if HW keyboard is connected

* Call super

* Fix double new line insert
2020-03-31 21:43:18 -03:00
Miguel Alatzar
ece9b6f1d9
[MM-22671] [MM-22935] Fetch posts for unread channels on loadChannelsForTeam (#4078)
* Fetch posts for unread channels on loadChannelsForTeam

* Add unit tests

* Remove unneeded setRetryFailed and getState

* Update getChannelSinceValue comment

* Move to post.js and pass in channels and channelMembers

* Exclude current channel

* Address PR review comments

* Fix import

* Fix mm-redux references
2020-03-31 18:41:11 -03:00
Miguel Alatzar
ee4b85edcf
[MM-23520] Port mattermost-redux (#4088)
* Remove mattermost-redux

* Move mm-redux files into app/redux

* Add @redux path to tsconfig.json

* Fix imports

* Install missing dependencies

* Fix tsc errors

* Fix i18n_utils test

* Fix more imports

* Remove redux websocket

* Fix tests

* Rename @redux

* Apply changes from mattermost-redux PR 1103

* Remove mattermost-redux mention in template

* Add missing imports

* Rename app/redux/ to app/mm-redux/

* Remove test file

* Fix fetching Sidebar GM profiles

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-03-31 11:09:26 -07:00
Elias Nahum
3c73e8ec89
Fix post in channel batching order (#4090)
* Fix post in channel batching order

* Preserve preferences on reset cache
2020-03-30 19:02:05 -03:00
Elias Nahum
fc34f34008
fetch statuses for users in DM/GM's (#4087) 2020-03-30 18:42:23 -03:00
Martin Kraft
9b553d3760
MM-23636: Default 'canPost' to true. (#4085) 2020-03-30 10:40:08 -03:00
Elias Nahum
950f5863fd
Revert "Use file URL over preview URL for GIFs (#3981)" (#4084)
This reverts commit cbc6ef185c.
2020-03-27 23:04:46 -03:00
Elias Nahum
7bb162b07a
MM-22292 Don't use redux to store username and password (#4072)
* MM-22292 Don't use redux to store username and password

* Set login and password MFA props
2020-03-26 23:57:58 -03:00
Elias Nahum
10d433cfab
Port WebSocket from mm-redux and batch actions (#4060)
* Port WebSocket from mm-redux and batch actions

* Update mm-redux and fix tests

* Change action name

* Naming batch actions

* Fix unit tests

* Dispatch connection change only if its different

* Remove comment

* Add Lint to TypeScript and fix linting errors

* Add WebSocket Unit Tests

* Revert from unwanted RN 0.62
2020-03-26 21:23:50 -03:00
Andre Vasconcelos
a114b19ecc
MM-18455 Replace search bar component (#3998)
* Initiated basic migration to react-native-elements

- Search bar receives all right props without custom animations being necessary
- Need to test on different layouts and cases
- May be possible to unify android and iOS components. Attempt later

* Removing separated android/ios files

- Adding implementation of android searchbar 
- updating test snapshots

* WIP: Integrating leftComponent and adding focus animations

* Adding animations to left component on focus and blur events

* Removing repeated styles and useless props

* Updating snapshots

* Ensuring clearIcon renders when tapping search suggestions

- Also makes sure it prioritizes custom color attributes over default values for the search input

* Refactoring styles, removing clear icon animations

- Also removed useless ternary operations since the library itself already checks whether the search input is empty

* Replacing icon components with props whenever possible

- Removing useless styles

* memoizing styles, adding default props/values

* Memoize searchBarStyle with params

* Fixing backgroundColor

* Removing minWidth for cancel button

* Fixing styling issues on both iOS and android

* Updating snapshots post merge

* Making sure showCancel can be controlled by props

* Updating snapshots

* Fix clipped edges on iOS & cancel icon on Android

* Fixed radius, memoized styles

* Fixing styling issues found on Android

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-03-26 16:53:25 -03:00
Miguel Alatzar
55cac2e062
[MM-23514] Don't use state for rowsSliced/colsSliced (#4075)
* Don't use state for rowsSliced/colsSliced

* Update snapshot

* Also show moreBelow when contentHeight > MAX_HEIGHT
2020-03-25 15:59:17 -07:00
Elias Nahum
54c6d98683
Fix Android Navbar tap events (#4074) 2020-03-24 20:24:29 -03:00
Elias Nahum
52053d768a
MM-23341 Fix message failed banner when posting first message (#4064)
* MM-23341 Fix message failed banner when posting first message

* Set switchToChannel flag back to false

* Feedback review
2020-03-24 17:16:44 -03:00
Miguel Alatzar
f404fd00b0
[MM-23483] Add backgroundColor to drawer content parent View (#4067)
* Add backgroundColor

* Revert backgroundColor and set elevation instead

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-03-24 12:40:04 -03:00
Miguel Alatzar
1006d52889
[MM-23506] Enable FlatList virtualization (#4062)
* Enable FlatList virtualization

* Update snapshot test
2020-03-23 22:26:05 -03:00
Elias Nahum
2452297592
Fix Message attachment actions colors on dark themes (#4061) 2020-03-23 22:05:42 -03:00
Amit Uttam
587ba38f4e
MM-23234 Prefer mobile-defined state actions (#4057)
Unify usage to one set of defined dispatch actions in codebase, instead of a mix of (almost) identical actions defined in `mattermost-mobile` and `mattermost-redux` .
2020-03-20 13:53:33 -03:00
Amit Uttam
956b65556c
MM-23162 Remove unnecessary dimension and orientation dispatches (#4046)
`setDeviceOrientation` and `setDeviceDimensions` used to get called on any navigation change (e.g. modal launches) and triggered multiple needless dispatches.
2020-03-19 13:50:51 -03:00
Elias Nahum
8fbc988c90
Upgrade Dependencies (#4034)
* Upgrade Navigation library

* Fix background color on Select Server

* Upgrade Navigation library

* Apply patch to nav lib

* Upgrade RNN to 6.1.1

* Update Dependencies

* Feedback review

* Call clearNavigationComponents when reset to channel
2020-03-18 19:05:49 -03:00
Elias Nahum
ec4dfb65b2
MM-23230 Batch post actions and fine tune postlint (#4042)
* PostList optimizations on FlatList

* Stop scroll to index if there is an interaction

* Fix unit tests

* MM-23176 Fix crash due to scrollToIndex out of range

* Batch mark channel as read action

* Fine tune post list

* Batch actions for getting posts

* Update app/utils/push_notifications.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* Update app/actions/views/channel.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* Pass state as arg to markAsViewedAndReadBatch

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-03-18 16:59:45 -03:00
Hossein Ahmadian-Yazdi
e8150fa7cc
[MM-21408] Make the name displayed consistent with teammate name display (#4021)
* update redux hash and function

* fix lint issue
2020-03-17 20:47:14 -04:00
Elias Nahum
3af9af68e4
MM-22318 Fix autocomplete selection char code for native emojis (#4040) 2020-03-17 12:48:22 -07:00
Farhan Munshi
217ef59f1c
[MM-23271] Check canAddReaction permission inside of render reactions (#4032)
* MM-23271 check canAddReaction when creating in reactions component

* MM-23271 Fixing linting
2020-03-16 11:29:13 -04:00
Elias Nahum
c685690d1e
MM-23179 Avoid unnecessary Overdraws (#4025)
* Set navigation based on theme only once

* Remove unnecessary overdraws

* Feedback review
2020-03-13 11:22:43 -07:00
Miguel Alatzar
d1add3c743
[MM-23241] Use expanded link from state (#4029)
* Get expanded link from state

* No need to await getRedirectLocation
2020-03-13 15:03:37 -03:00
Elias Nahum
50fc7d6896
Remove ExperimentalUsernamePressIsMention build time feature (#3993) 2020-03-13 10:54:19 -07:00
Martin Kraft
fbd7fedfbc
MM-21925: Enforces 'create_post' permission. (#3904)
* MM-21925: Enforces 'create_post' permission.

* MM-21925: Reverts adding 'can_post' check from post component.

* MM-21925: Removes unused variable and some duplicate imports.

* MM-21925: Removes unnecessary prop.

* MM-21925: Removes unused test prop.
2020-03-13 10:17:42 -03:00
Elias Nahum
d7acd5d0c3
MM-23176 Fix crash due to scrollToIndex out of range (#4026) 2020-03-11 17:14:11 -03:00
Elias Nahum
b8562e956b
MM-22975 Fix archive handle when server does not allow view archive channel (#4019)
* MM-22975 Fix archive handle when server does not allow vieweing an archive channel

* Update mm-redux ref
2020-03-09 17:06:02 -03:00
Elias Nahum
5f74491ea8
Upgrade Navigation library (#3997)
* Upgrade Navigation library

* Feedback review on Navigation Library

* Fix select server background color

* Fix iPhone 11 and 11 Pro Max navbar height

* Fix background color on Select Server

* Upgrade nav lib to 6.1.0

* Apply patch to nav lib

* Upgrade RNN to 6.1.1
2020-03-09 12:50:42 -07:00
Harrison Healey
f751b552b4
Add custom rule to prevent passing getState into dispatch (#4010)
* Add custom rule to prevent passing getState into dispatch

* Update package.json
2020-03-06 17:07:20 -05:00
Farhan Munshi
0bb573c7e0
MM-22622 Disable at mention highligh in channel header (#4005) 2020-03-06 11:50:38 -07:00
Miguel Alatzar
bdbef9444a
Fix crash for unarchived system message (#4004) 2020-03-05 16:39:37 -07:00
Miguel Alatzar
b650c9acc0
MM-22385 RN: iOS - Automatic Replies custom message SafeAreaView fix (#4001)
* Applying paddingHorizontal to auto responder textbox

* Making sure paddingHorizontal applies when in portrait mode

* Final cleanup
2020-03-05 12:12:55 -07:00
Miguel Alatzar
898b59ab27
Fix app hanging when switching to a team after opening push notification (#4013) 2020-03-05 09:52:56 -07:00
Amit Uttam
1d3c006b97
MM-23014 Keep Android cache for vector icons (#4011) 2020-03-05 13:23:39 -03:00
Elias Nahum
3e7096de3f
Flush store on logout (#4002) 2020-03-04 09:18:20 -07:00
Elias Nahum
06f03d88e9
Ensure modals opened from the Settings Sidebar have a close icon (#3994)
* Ensure modals opened from the Settings Sidebar have a close icon

* Feedback during review
2020-03-04 08:41:03 -03:00
Elias Nahum
58dcbb215b
Fix typing on input box after returning from an archived channel (#3992) 2020-03-03 19:44:23 -03:00
Elias Nahum
fbee2fb6b6
MM-22790 Fix Load more joinable/archived channels in more channels screeen (#3988)
* MM-22790 Fix Load more joinable/archived channels in more channels screen

* Add unit tests
2020-03-03 13:35:46 -03:00
Farhan Munshi
8052112260
[MM-22622] Check mentionHighlightsDisabled in markdown (#3975)
* MM-22622 Check mentionHighlightsDisabled in markdown

* MM-22622 Use array of mentions instead of long conditional

* MM-22622 Disable Channel mention highlight for channel header change messages

* MM-22622 Update tests to ensure mention highlight disabled on system message
2020-03-03 16:37:44 +05:30
Miguel Alatzar
cbc6ef185c
Use file URL over preview URL for GIFs (#3981) 2020-03-02 15:42:51 -03:00
Elias Nahum
5e8872e2d3
MM-22752 Preserve other teams channel membership (#3987) 2020-03-02 11:21:11 -07:00
ami9000
60be3d2783
MM-22134: Fix StatusBar after Photo-Camera post in landscape mode (#3986)
* Fix StatusBar after Photo-Camera post in landscape mode

* revised tests
2020-03-02 13:24:09 -03:00
Miguel Alatzar
b8fc38d3bc
[MM-22152] [MM-22321] Fix Markdown table issues (#3924)
* Ensure isFirstRow prop is set on first row

* Determine maxPreviewColumns on mount

* Fix expand button offset on Android

* Fix moreBelow gradient

* Show right gradient when columns are sliced

* Fix moreRight conditions
2020-03-01 09:27:25 -03:00
Elias Nahum
c9d78766d4
MM-22752/MM-22686 global timeout and team switch (#3978)
* MM-22686 decrease request timeout to 5s

* MM-22752 Fix switching teams with and without connction
2020-03-01 09:25:53 -03:00
Miguel Alatzar
55ebf4f5e4
[MM-20950] Don't reset the navigation root when clearing data (#3929)
* No need to resetToChannel on clearing data

* Don't use componentWillReceiveProps

* Dismiss all modals on iOS too

* Use centerChannelBg when channel as root

* Fix resetToChannel test

* Fix removal of loadChannels call when rebasing with master

* Add new line

* Address PR review comments
2020-02-27 17:15:45 -03:00
Elias Nahum
ce1aad22ce
MM-21276 & MM-22419 Fix PostList insets and Channel Intro (#3921)
* MM-21276 & MM-22419 Fix PostList insets and Channel Intro

* Update patches/react-native-keyboard-tracking-view+5.6.1.patch

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-02-27 17:06:04 -03:00
Elias Nahum
0504a962a1
MM-22379 & MM-22598 Boost perf by using FastImage cache in favor of ImageCacheManager (#3971)
* MM-22379 & MM-22598 Boost perf by using FastImage cache in favor of ImageCacheManager

* Code review
2020-02-27 16:29:51 -03:00
Hossein Ahmadian-Yazdi
ff4a771a92
[MM-22687] Update Android downloader (#3970)
* update android downloader

* update en.json
2020-02-27 12:46:54 -05:00
Elias Nahum
f3a94bfbc9
Fetch archived channels (#3964) 2020-02-27 08:12:20 -05:00
Farhan Munshi
7952b5aeb7
[MM-21923] Enforce channel mentions permission (#3875)
* MM-21923 Enforce channel mentions permission by hiding it from autocomplete and disabling @mention confirmation modal

Add tests for post_textbox channel mentions

* MM-21923 Set use channel mentions to true if server version is not minimum required

* MM-21923 Point to specific redux hash and update permission check to be easier to read

* MM-21923 Fix currentChannel.id
2020-02-26 18:41:47 -07:00
Ryan Wang
99cc9c94c3
MM-10160 - support interactive button styles (#3896)
* MM-10160 - support interactive button styles

* MM-10160 - update action button styles
- move status colors to constants

* MM-10160 - add unit tests
- add button border opacity
- fix color accuracy

* MM-10160 - change action button padding
- edit hardcoded color status

* MM-10160 - update styles

* MM-10160 - center action button text

* MM-10160 - change action button line height again

* MM-10160 - improve variable names

* MM-10160 - split up tests to be more descriptive
2020-02-26 17:20:20 -07:00
Allen Lai
3e2fc1bc67
[MM-20804] Add "Unarchive Channel" option to the channel info screen (#3663)
* undelete

* fix build

* change let to const

* ran make i18n

* small refactor

* using canUndelete var

* added render message

* fix bug

* sync

* remove duplicate

* fix test

* add unit test for unarchive channel button render

* fix unit test for unarchive channel

* delete space

* change logic in undelete

* add server minimum for feature

* fix renderunarchive test with adding props variables

* snpashot wasnt matching. fixed by adding to base prop

* return early if false

* change position and color for unarchive button

* refactor handle delete undelete leave

* move serverversion call up

* undelete to unarchive

* remove unnecessary seperator

* hash

* Update app/screens/channel_info/index.js

Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>

* delete canuseunarchive feature

* add test to render sys message

* remote 'w' in package.json

* add trailing comma

* update redux hash

* whitespace in test

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-02-26 21:02:28 -03:00
ami9000
30594cec5d
MM-12148: Prevent emdash convert in a Code Block on ios (#3885)
* Add fix to prevent emdash autocorrect in a Code Block on ios

* Add fix to prevent emdash autocorrect in a Code Block on ios

* code clean up

* separate to new switchKeyboardForCodeBlocks function

* added emdash prevention to edit_post and also code cleanup

* moved keyboardType logic to its own utils function and added unit tests

* clean up - align event argument names

* removed unnecessary event check
2020-02-26 20:51:53 -03:00
ami9000
b46996a841
MM-22375: Remove mark as unread post option in archived channels (#3922)
* Remove mark as unread post option for archived channels and revise tests

* revised tests
2020-02-26 20:40:53 -03:00
ami9000
4668c9cce5
Edited onHandlerStateChange to fix reaction list stutter (#3951) 2020-02-26 11:11:48 -07:00
Elias Nahum
28384bc9d2
Fix in-app notification crashing when receiving multiple (#3967)
* Fix in-app notification crashing when receiving multiple

* Dismiss the overlay when tap without waiting for interaction manager
2020-02-26 10:57:17 -05:00
Nev Angelova
a971e6820b
[MM-22129] - Change "Copy Permalink" text in post options menu (#3950) 2020-02-23 22:37:46 +02:00
Amit Uttam
9d44ef8053
MM-22629 Center-align tall & thin image attachments (#3931)
Bug reported in community: https://community.mattermost.com/core/pl/yy39ajg1ajfm386dms6tdyjrtw
2020-02-18 15:48:26 -03:00
Elias Nahum
334a07aabe
Performance improvements (#3911)
* Improve sidebar performance on first load

* Initial work for switch channel

* Revert android changes

* Split Sidebar per Platform

* Fix waitForHydration executing the callback more than once

* Fix custom emoji not showing on Android

* Finalize Channel Switch

* Enable Android Ram Bundles

* Select the right team for lastChannelForTeam

* Channel loading post indicator

* Fix main sidebar base intl provider

* Update mm-redux

* No need to request configAndLicense on launch

* Load channel member roles

* Rename closeChannelDrawer to closeMainSidebar

* do not throw errors when console is called while running tests

* constant for LOADING_POSTS_HEIGHT

* Remove show more if a long post is edited and no longer long

* Update mm-redux#batch-actions branch

* Code review

* Clear notifications if channel was switched

* Import Platform

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-02-17 21:18:09 -07:00
Elias Nahum
05afa871eb
MM-20184 Remove ios drawer hack and Fix right drawer partially shown on landscape (#3919) 2020-02-17 12:27:54 -07:00
Elias Nahum
d35c05ce05
MM-22487 Fix race condition causing the user to logout (#3916) 2020-02-12 17:26:06 -03:00
Elias Nahum
696d6eef08
Re-enable ram-bundles (#3907) 2020-02-10 11:20:45 -07:00
Miguel Alatzar
3c417838a4
Dispatch loadConfigAndLicense on launchApp (#3902) 2020-02-10 13:46:22 -03:00
Miguel Alatzar
abaed71f47
[MM-22034] Tighten up post draft UI (#3898)
* Tighten up post draft UI

* Revert "MM-15307 Updated to use InteractionManager (#3666)"

This reverts commit e08155c81b.

* Address PR review comments

* Update snapshot test

* Don't return null if no files

* Fix progress text and padding issues

* Fixes per Matt's review

* Make linter happy
2020-02-10 11:46:00 -03:00
Amit Uttam
26df779330
MM-22253 Reduce unnecessary re-renders in channel switching (#3900)
Re-renders were occuring because of prop and state updates that created new object references, despite being of identical value. A key culprit was `postListHeight` in `PostList` which goes through a few calls to `handleContentSizeChange` when loading posts.

Also, "New Messages" divider line is a pure component now (via `memo`) to reduce unnecessary re-renders here too.
2020-02-07 14:13:44 -07:00
Miguel Alatzar
cadec1b793
Fix typo in error.message (#3891) 2020-02-07 09:50:20 -03:00
Amit Uttam
a17b534916
[MM-22344] Remove ChannelPeek (#3894)
Introduced large number of unnecessary re-renders when opening channels, and ideally should not be a part of the channel switching/opening code path. Although this was discovered while trying to investigate an [Android-specific issue](https://mattermost.atlassian.net/browse/MM-22253), this extra code path made it difficult to see what Android is potentially doing differently than iOS.

Functionality originally introduced in #1203.

Conversation for removal is [here](https://community.mattermost.com/core/pl/hfcogf6pr7rw8k3ryq14c69c7e)
2020-02-06 22:42:35 -03:00
Miguel Alatzar
a1474d9e89
[MM-22236] Check against Permissions.RESULTS.GRANTED (#3892)
* Check agains Permissions.RESULTS.GRANTED

* Fix file and image upload as well

* Fix permissions

* Make linter happy

* Use toHaveBeenCalledWith
2020-02-06 11:55:15 -07:00
Miguel Alatzar
2464780eca
[MM-22300] Use dismissModal to close ChannelInfo screen (#3890)
* Use dismissModal to close ChannelInfo screen

* Missing semicolon
2020-02-05 17:18:58 -07:00
Emilio Rodriguez
0b98d82bfa
Mm 10601 - Use Enter Key to send message on Hardware Keyboards (#3760)
* Reacting to shift-enter events on iOS

* moving keyEvent logic to handleHardwareEnterPress

* configured android to work with keyEvents

* using dispatchKeyEvent instead of onKeyUp

* using react-native-hw-keyboard-event

* cleanup

* updated package name

* update package name

* using react-native-hw-keyboard-event v0.0.2

* reverted cocoapods version change

* Documentation

* fix detection of Shift-Enter on android

* simplify dispatchKeyEvent()

* fix for stacked hardware keyboard events

* Update android/app/src/main/java/com/mattermost/rnbeta/MainActivity.java

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* simplify dispatchKeyEvent

* removed yarn.lock

* using react-native-hw-keyboard-event v0.0.4

* Using ACTION_UP instead of ACTION_DOWN

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-02-04 09:34:14 -07:00
Miguel Alatzar
e62c9b7a6d
[MM-21074] Handle iOS reply action on native side (#3884)
* Handle iOS reply action on native side

* Make linter happy

* Revert rn vector changes to .pbxproj
2020-02-04 08:49:26 -07:00
Elias Nahum
484e7068c3
MM-22165 Fix channel sidebar close gesture (#3879) 2020-02-01 13:12:05 -03:00
Miguel Alatzar
476fc19431
[MM-22159] Import from semver/preload (#3874)
* Import from semver/preload

* Add unit tests
2020-01-30 09:33:54 -03:00
Miguel Alatzar
a8f0314067
[MM-22078] [MM-22083] Sort emojis in EmojiPicker (#3865)
* Sort emojis in EmojiPicker

* Pass search term to compareEmojis

* Sort emojis that include search term first

* Fix sorting

* Handle compareEmojis without search term

* Return doDefaultComparison

* Check includes only if needed

* Make linter happy

* Use doDefaultComparison
2020-01-28 15:04:59 -07:00
Elias Nahum
ee25cf49eb
MM-22090 Fix iOS photo/camera denied permissions (#3860)
* Fix iOS photo/camera denied permissions

* Add unit test and rename files

* Request for permission if returns denied
2020-01-28 16:53:14 -03:00
Amit Uttam
99a551df6d
Handle links with no server URL provided (#3862)
Default to current server or site URL.

Example case: `<jump to convo>` links generated from autolink plugin have their server/site URL stripped, and it is assumed that generated links are relative to the current server.

Conversation: https://community.mattermost.com/core/pl/78j4a7ozupbci8qxwx1sczc1ua
2020-01-28 09:14:57 -03:00
Elias Nahum
2765d1b06b iOS Slide open main sidebar from anywhere (#3859) 2020-01-27 19:53:16 -07:00
Elias Nahum
ff13f3e612 MM-21961 Fix Incorrect Timestamp on Android Mobile App (#3861) 2020-01-27 12:57:22 -07:00
Ryan Wang
7e7c652828 MM-17649 - fix VoiceOver on server select & login (#3855) 2020-01-24 14:57:40 -03:00
Saturnino Abril
a76c0fbb9d update commit hash of mattermost-redux and cleaup initial state of requests.preferences (#3836) 2020-01-24 21:27:39 +07:00
Miguel Alatzar
d56965e4ce Call Linking.getInitialURL() in launchApp (#3843) 2020-01-22 15:06:56 -03:00
Andre Vasconcelos
b6e6d4c9e0 Fixing post draft style to comply with design specs (#3818)
* Polishing post draft to comply with design specs

* changed maxHeight in landscape mode, fixed icon sizes

- Refactored code so that post draft icon sizes are taken from same constant value

- Set maxHeight value in landscape mode to be smaller (tests pending)

- Removed repeated styles for button wrappers (passing them down as props to child components)

- Increased size of image attachment remote icon, and increased tappable area

* Removing repeated logic for file upload

* Fixing failed snapshot tests / style checks

* Fixing file upload remove icon to have 64% opacity

* post draft UX/UI improvements

* Fix input box extra spacing

* input box line height and attachment border

* Animate to original state even if error is showing

* Fix permissions

* Improve attachment error animation

* Fix iOS post input height

* Update snapshots
2020-01-21 15:20:19 -03:00
Amit Uttam
36c7cf4014 MM-21723 Handle deep link errors to inaccessible teams, channels & permalinks (#3815)
* Consolidated error handling for a user's reachable teams.
* Consolidated error handling for a user's reachable channels.
2020-01-21 14:43:24 -03:00
Elias Nahum
1e0095d465 MM-21892 Fix TypeError cause by mm-redux#1006 (#3837) 2020-01-21 08:53:01 -07:00
Amit Uttam
331cfcc372 Set default app scheme to mattermost (#3827)
Was originally set to `mattermost-beta` as per #3767 .
2020-01-20 16:14:19 -03:00
Elias Nahum
7c09334dc4
Deps update (#3806)
* Dependecy updates

* Update dependencies
2020-01-20 13:20:03 -03:00
Elias Nahum
08e748bcae MM-21634 Fix keyboard glitch when returning to channel screen from the code screen (#3813) 2020-01-20 08:50:32 -07:00
Miguel Alatzar
24820bd34d
[MM-21865] Dispatch loadConfigAndLicense on successful login (#3819)
* Dispatch loadConfigAndLicense on successful login

* Emit server version changed event

* Make linter happy
2020-01-20 08:25:42 -07:00
Jesse Hallam
e127951230 MM-21632: fix toggling interactive dialog boolean (#3793)
* MM-21632: fix toggling interactive dialog boolean

My fix for MM-17519 broke the /rendering/ of the boolean toggle, but not
the underlying interactive dialog state (and the thrust of the original
issue).

* MM-21683: fix handling of boolean defaults

* unit tests
2020-01-20 21:29:43 +08:00
Amit Uttam
ef0274cad8 [MM-16263] UI/UX Improvements to the mobile post draft area (#3807)
* Adding base button functionality

Moving file upload previews to be under textbox

* Ensuring textbox is scrollable when in landscape mode

* Updated image picker to use mixed camera option

* Added unit tests, fixed other tests affected by dependency update

* Updated patch for react-native-image-picker to 1.1.0

* Fixing incorrect import of DocumentPicker

* MM-20989: Ensuring keyboard doesn't dismiss while submitting post (#3758)

* Ensuring keyboard doesn't dismiss while submitting post

* Update snapshot

* Preventing the @ icon from being repeatedly tappable (#3777)

* Fix snapshot from merge

* MM-21736 Select/Take images and videos for Android

* MM-21737 Fix attachment error message position on iOS

* Remove FileUploadPreview from the iOS Thread screen

* Fix android camera permissions

* Fix post input box sizing and disable scrollview

* Fix iOS photo gallery videos

Co-authored-by: Andre Vasconcelos <andre.onogoro@gmail.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-01-16 22:17:03 -03:00
Miguel Alatzar
6879388d04
[MM-21184] Enabled Hermes (#3814)
* Enable Hermes

* Don't sort emojis in selector

* No need for transformer

* Remove unnecessary packager files
2020-01-16 12:56:44 -07:00
Amit Uttam
f6ee6b767e
MM-14470 Deep links launch when app is not currently open (#3802)
Previously, deep links would only work when the app was already open/previously launched.

Now, invoking a deep link launches the app if not already open, and opens the deep link destination.
2020-01-15 13:54:18 -03:00
Elias Nahum
92033f42ec MM-13953 Channel Info screen transition (#3812)
* MM-13953 Channel Info screen transition

* Fix unit test
2020-01-15 09:29:57 -07:00
Amit Uttam
f3b0e4aa28 MM-21068 Notify when attempting to enter private channel/group via explicit link (#3759) 2020-01-13 20:57:06 -07:00
Elias Nahum
2951245d68
MM-21288 Fix attaching files on Android (#3805) 2020-01-13 22:46:27 -03:00
Saturnino Abril
f8698d0293 MM-21342 Fix leading zero on post by using react-intl by default and fallback to moment-timezone for unsupported locale (#3797)
* used react-intl for post time as default and moment-timezone as fallback

* add @testing-library/react-native to better test component rendering
2020-01-13 20:12:51 -03:00
Amit Uttam
a5330bc08f
MM-21369 Require server/site URL for deep links (#3770)
**Old (only worked without serverURL or siteURL)**

Beta
* `mattermost-beta://<teamname>/channels/<channelname>`
* `mattermost-beta://<teamname>/pl/<permalinkID>`

Release
* `mattermost-mobile://<teamname>/channels/<channelname>`
* `mattermost-mobile://<teamname>/pl/<permalinkID>`

**New working deep link patterns**

Beta
* `mattermost-beta://<server-or-site-URL><teamname>/channels/<channelname>`
* `mattermost-beta://<server-or-site-URL><teamname>/pl/<permalinkID>`
* `mattermost-beta://https://<server-or-site-URL><teamname>/channels/<channelname>`
* `mattermost-beta://https://<server-or-site-URL><teamname>/pl/<permalinkID>`

Note: Transport protocol (http, https, etc.) is optional.

Release
* `mattermost-mobile://<server-or-site-URL><teamname>/channels/<channelname>`
* `mattermost-mobile://<server-or-site-URL><teamname>/pl/<permalinkID>`
* `mattermost-mobile://https://<server-or-site-URL><teamname>/channels/<channelname>`
* `mattermost-mobile://https://<server-or-site-URL><teamname>/pl/<permalinkID>`

Note: Transport protocol (http, https, etc.) is optional.
2020-01-13 16:28:14 -03:00
CJ
13866bdfce MM-20625 Unit Tests (#3787)
* MM-20625 Unit Tests

* Updated tests
2020-01-13 12:35:10 -03:00
CJ
ee15776a06 MM-21230 Added check for first post (#3786)
* MM-21230 Added check for first post

Added a check to see if there was an original postId to validate the moreMessages check.

* Added comment
2020-01-13 12:23:10 -03:00
CJ
28b585284a Removed Markdown from Purpose on Channel Info (#3796) 2020-01-12 06:48:22 -05:00
Vladimir Lebedev
64d9f7e7f7 MM-18900 - Remove search unused status flags (#3772)
* Remove search unused status flags

* fix lint, fix wrong variable usage

* remove comment

* add test, fix bug with wrong PropTypes

* make test cleaner
2020-01-12 08:37:15 -03:00
Elias Nahum
1e42a87826
Fix iOS Share extension alert message when file size is larger than allowed (#3792) 2020-01-10 07:41:48 -03:00
Amit Uttam
a17983c1e4
MM-12215 Make deep link URL prefix configurable for Release/Debug (#3767)
Default deep link URL prefix: `mattermost-beta`

To set to `mattermost-mobile` (or anything else, for that matter) in production releases, set fastlane ENV var `DEEPLINK_PREFIX` to `mattermost-mobile`
2020-01-09 16:00:20 -03:00
Vladimir Lebedev
422fc5ee4a MM-18767 Remove deprecated lifecycle methods from post textbox (#3697)
* MM-18767 Remove deprecated lifecycle methods from post textbox

* fix current issues

* change deep equal compare to just compare, fix test

* remove redundant state initialization

* restore state

* move state from constructor
2020-01-09 23:07:55 +08:00
Chris Dobson
ce53a7ac29 MM-18571: Include self user in autocomplete (#3761)
* Include current user in search

* Removed unused parameters

* Include new text in i18n

* Update autocomplete tests to include current user

* Use FormattedText

* Update app/selectors/autocomplete.test.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-01-09 19:47:40 +08:00
CJ
e08155c81b MM-15307 Updated to use InteractionManager (#3666)
* MM-15307 Updated to use InteractionManager

Replaced the setTimeout with InteractionManager to resolve the delay set.

* Updated to apply animation to the input height

* Updated to apply animation to the input height

* Fixed eslint issue

* Updates per review

* Updates from feedback
2020-01-09 18:02:02 +08:00
Miguel Alatzar
c988a3ea80 [MM-21270] Handle lower case headers (#3790)
* Handle lower case headers

* Change var name
2020-01-09 16:19:17 +08:00
CJ
907dce3cda
MM-20949 Updated verbiage for profile image error (#3768)
* MM-20949 Updated verbiage for profile image error

* Updated commit
2020-01-07 21:16:13 -05:00
Elias Nahum
5d743004b8 MM-17044 Load posts until no more are needed (#3656)
* MM-17044 Load posts until no more are needed

* Improving post list tests for componentDidUpdate

Co-authored-by: mattermod <mattermod@users.noreply.github.com>
2020-01-07 11:59:31 -07:00
Elias Nahum
a8e3b608ad Fix headers for ESR 5.9 (#3738)
* Fix headers for ESR 5.9

* check if reactions is defined to avoid a crash with servers without metadata
2019-12-19 21:33:28 -07:00
Chris Dobson
e1cf5ac960 MM-14622 Use post id when retrieving opengraph data from mattermost-redux (#3516)
* Use post id when retrieving opengraph data from mattermost-redux

* Updated package.json with the appropriate PR for mattermost-redux

* Switch mattermost-redux back to master
2019-12-18 09:51:31 -05:00
Jesús Espino
23a79b9da2 [MM-21270] Fixing team join without the invite id (#3710)
* Fixing team join without the invite id

* Fixing tests

* Adding tests to verify proper behavior calling the correct function based on the server version

* Extract server version from headers

* Make linter happy

* Update mattermost-redux

* Update mattermost-redux
2019-12-16 19:04:42 -07:00
Scott MacGregor
7afa1b21ea MM-18766 - componentWillReceiveProps is being deprecated (#3573)
* MM-18766 - componentWillReceiveProps is being deprecated - migrate to getDerivedStateFromProps & componentDidUpdate

* MM-18766 - fix linter error

* MM-18766 - keep it simple - resolve a linter error
2019-12-16 22:37:00 +08:00
Elias Nahum
12c028ae73
Fix Hamburger and iOS App Icon badge number when marking channel as unread (#3705)
* Fix Hamburger and App Icon badge number when marking channel as unread

* Temp mm-redux commit hash

* Update mm-redux commit hash
2019-12-16 07:30:04 -03:00
Elias Nahum
43f999ed8c
MM-21176 Preserve text on input if command fails (#3695)
* MM-21176 Preserve text on input if command fails

* Add unit test for execute command success
2019-12-13 09:17:50 -03:00
CJ
02780faa6c
MM-18054 Fix Comment Line showing (#3696)
* MM-18054 Fix Comment Line showing

Restructured the check for the previous post to make sure comment line does not appear for posts on same thread, but from different users.

* MM-18054 Updated after review

Updated the logic to be more bulletproof
2019-12-12 19:25:00 -05:00
Jesse Hallam
ae3d0107f8 MM-17519: do not stringify booleans (#3693)
Match the webapp behaviour so as to avoid stringifying booleans in the interactive dialog payloads.

Fixes: https://mattermost.atlassian.net/browse/MM-17519
2019-12-13 00:25:27 +08:00
Elias Nahum
525b0d5ad3
MM-19920 MM-19924 Fix mis-align post input field attach and send icons (#3631) 2019-12-10 17:49:51 -03:00
Harrison Healey
dc66b443a3 MM-20947 Don't mark channel as read when reconnecting to manually unread channel (#3685) 2019-12-11 03:07:14 +08:00
CJ
855c12d80e MM-21062 Added margin to custom Emoji (#3682)
Added margin to custom emoji style to match native emoji.
2019-12-10 13:32:57 -03:00
CJ
1ac82b8df2 MM-21085 Updated waitHydration (#3677)
* MM-21085 Updated waitHydration

Updated the hydration of hte store to first check if it completed as this was being caused due to a race condition.

* MM-21085 Updated for callback

MM-21085 Updated for callback
2019-12-09 16:54:41 -03:00
Miguel Alatzar
a58ebad7b1 [MM-18177] Increase post visibility when creating/receiving a new post for the current channel (#3662)
* Increase post visibility for current channel on new post

* Increase post visibility after post creation
2019-12-08 15:30:24 -03:00
Nev Angelova
f6addb491b [GH-11437] Fix thumbs emoji sorting logic for mobile (#3633)
* [GH-11437] Fix thumbs emoji sorting logic for mobile

* Add unit tests

* Sort emojis in selector and handle string emojis

* Remove redundant serverVersion logic

* Fix typo in app/utils/emoji_utils.test.js

Co-Authored-By: Saturnino Abril <saturnino.abril@gmail.com>
2019-12-08 10:10:56 -03:00
Miguel Alatzar
0b3ba08030
Pass callback to waitForHydration (#3667) 2019-12-06 12:07:11 -07:00
Miguel Alatzar
2397224f8e Show autocomplete view only when there are children (#3665) 2019-12-06 13:36:07 -05:00
Elias Nahum
0909a30633
MM-20682 Unit test for dimissing the status modal before the sidebar (#3664) 2019-12-04 18:30:12 -03:00
Nick Brady
a0c5ad5c2b MM-18530 - Update Main Sidebar on iOS (#3622)
* initial working code

* minimum changes for main sidebar working

* add settings sidebar back in

* fix visual bug with sidebar showing underneath

* fix bug for android

* cleanups

* minor cleanups and update snapshot

* add basic test

* fix style errors

* review changes
2019-12-04 15:19:50 -03:00
Elias Nahum
4c4e1907cb
MM-20682 Android back button to dismiss status modal first (#3628) 2019-12-04 15:17:59 -03:00
Sudheer
a8ad077086 MM-20790 Mark as Unread option should not be available on mobile if the server does not support it (#3655)
* MM-20790 Mark as Unread option should not be available on mobile if the server does not support it

 * Check for server version with min 5.18v for showing the option
   to mark as unread

* Change if condition
2019-12-03 14:06:18 -05:00
CJ
da858797d3
MM-19837 Remove Opacity from AtMention Markdown (#3640)
* MM-19837 Remove Opacity from AtMention Markdown

Removed the opacity that was set on the base text style for the markdown on AtMention for system messages.

* MM-19837 Updated opacity for AtMention

The baseTextStyle being used to set the opacity is used across the entire text format, so for this change where an AtMention is used, I added a new opacity to overwrite the on applied by the baseTextStyle.
2019-12-03 13:07:34 -05:00
Elias Nahum
4cc375dcb0
Fix SSO login on iOS (#3657) 2019-12-03 13:08:30 -03:00
CJ
aa03f1cd1c Updated localization items (#3638)
Updated the i18n and default messages for the network failure and entire channel message alert.
2019-12-03 21:53:55 +08:00
Elias Nahum
59c8cbed55 MM-20780 MM-20782 Clear cookies on logout (#3645) 2019-12-03 08:33:09 +08:00
Elias Nahum
9096818003 MM-20778 Remove caption as part of the file path (#3646) 2019-12-03 08:12:53 +08:00
Elias Nahum
8d37e3d22f MM-20789 Enforce SECURE_SOFTWARE (#3637) 2019-12-02 08:23:27 -07:00
Elias Nahum
4933cecd1d MM-20758 MM-20762 Fix archived channels in more channels screen (#3635)
* MM-20758 MM-20762 Fix archived channels in more channels screen

* Separate archived and public channels
2019-12-01 22:07:28 -05:00
Andre Vasconcelos
f7bed8dcdb MM-15635 - Making markdown tables more responsive (#3249)
* Making markdown tables more responsive

* Changing implementation of isTablet and isLandscape

* Fixing variable names & added more table styles

* Adding header backgrounds & iOS fixes

* Changing cell padding to 8

* Fixing positioning of expand table buttons

* Fixed android issues and flex render conditions

- Centered icon in expand button instead of using fixed paddings (icon was slightly off center)
- Fixed expand button rendering on android
- Separated full table view into ios / android to allow for separate styling

* Merging table back to single file

* Resolving conflicts & improving full table view

- Made the full table view scrollable through any part of the screen, as opposed to only the table area (only works on iOS)
- Resolved conflicts with PR that limits tables to 5 columns visible on channel view
- Made changes to keep behavior of tables consistent on table view
- Added logic to render "moreRight" element if table was cut in channel view
- Updated snapshot
2019-11-30 14:27:02 -03:00
Harrison Healey
d140edf78e MM-20228 Update Mark as Unread menu option text (#3634) 2019-11-30 14:13:51 -03:00
Elias Nahum
46efa88bb4
MM-19990 Prevent glimpse of the app if TOS not accepted (#3617) 2019-11-30 14:12:08 -03:00
CJ
a3c7b4707e MM-19708 Adjusted display name width to 80% for landscape (#3599)
* MM-19708 Adjusted display name width to 80% for landscape

Adjusted landscape maxWidth for both the base display of the name and the adjusted width with bot/reply buttons.

* Making less complex

* MM-19708 Reduced complexity of style code

Reduced complexity of style code

* MM-19708 Updated snapshots

* MM-19708 Updated for eslint
2019-11-29 13:16:38 -03:00
Miguel Alatzar
85264f2c54 Use bottom sheet over modal (#3618)
* Use bottom sheet over modal

* check-style fixes
2019-11-28 08:05:38 -03:00
Elias Nahum
afd3e3374c MM-20689 Long post to use all available space (#3623)
* MM-20689 Long post to use all available space

* Add footer and update snapshots

* Fix footer ui

* Remove file_ids from connected component
2019-11-28 17:30:02 +08:00
Elias Nahum
e8cd6dad73 MM-19896 Correct helper text on Email Notifications (#3614) 2019-11-28 10:23:30 +01:00
Asaad Mahmood
19c99673f7 MM-20326 - Updating markdown table css (#3608)
* MM-20326 - Updating markdown table css

* Updating UI

* MM-20326 - Updating markdown table css
2019-11-28 03:02:40 +08:00
Miguel Alatzar
2393eb3283 [MM-20200] Fix autocomplete when editing channel header (#3595)
* Fix autocomplete when editing channel header

* Fix iOS scroll

* Use zIndex on header help text view

* No need to use innerRef

* Fix typos
2019-11-28 01:43:28 +08:00
Elias Nahum
75e0854411 MM-20694 Fix race condition when the store has not rehydrated (#3610)
* MM-20694 Fix race condition when the store has not rehydrated

* Making waitForHydration re-usable
2019-11-27 08:03:50 -07:00
CJ
9041e90276 MM-19834 Fixed direct mentions highlight color (#3572)
* MM-19834 Fixed direct mentions highlight color

Updated the AtMention to check if it will be highlighted before applying it's color. The highlight function was applying it's color before the AtMention color, so it was being overwritten.

* MM-19834 Start Unit Test

* MM-19834 Added Unit Tests

Added unit tests for the rendering of highlighted/non-highlighted displayname.
2019-11-27 09:08:05 +08:00
Miguel Alatzar
c977e38639
Fix video player refs (#3604) 2019-11-25 17:27:24 -07:00
CJ
f577c00422 MM-20201 Fixed asterisk on Nickname (#3588)
* MM-20201 Fixed asterisk on Nickname

Added optional prop to the Nickname field, which removes the asterisk

* MM-20201 Updated Position field also

Added optional prop to position field.
2019-11-21 18:02:42 -07:00
Miguel Alatzar
430463822b
Use LifecycleEventListener listener for MattermostManagedModule (#3578) 2019-11-20 15:25:53 -07:00
Miguel Alatzar
1d3379c32e [MM-20138] Slice markdown table (#3571)
* Preview markdown table as 5x5 max

* Make linter happy

* Determine max columns from device width

* Add snapshot test

* Use Dimensions and update unit tests

* Remove async
2019-11-20 03:27:55 +08:00
Harrison Healey
b69c6af2b4 Merge branch 'master' into mark-as-unread 2019-11-19 09:57:43 -05:00
Matheus Cardoso
6c1c64f81d MM-17838 Wrap reactions when they exceed screen size (#3144)
* MM-17838 Wrap reactions when they exceed screen size

* Hide add reaction button after 40 reactions

* Hide add reaction button after 40 reactions

* Fix tests

* Fix crash when post has no reactions and convert to factory

* Create constant and use a separate prop for allowing more reactions
2019-11-18 22:10:38 -03:00
Miguel Alatzar
ba76e5eac7 [MM-16232] ID loaded push notifications (#3562)
* [MM-16232] Android: Fetch notification in notificationReceiptDelivery (#3552)

* Fetch notification in notificationReceiptDelivery

* Fix patch

* Fix patch take 2

* No need to send user_id to ack endpoint

* Just putString in mNotificationProps

* Fix patch take 3

* Revert react-native-notifications patch

* Update patch and fix rejections

* Remove trailing newline in patch

* Move PushNotification changes to end of patch

* npm cache test

* Revert "npm cache test"

This reverts commit d31030aaeeb010c1c3d22a5f6196191eeb849add.

* Created patch after upgrading node

* Created patch after upgrading node take 2

* Remove androidx changes from patch

* Patch packages then jetify

* Cache node_modules without patches

* Remove adding of default message (#3557)

* [MM-16232] iOS: Fetch id-loaded push notification from server (#3556)

* Fetch notification from server

* Parse fetched notification response

* Fix id-loaded notifications for DM/GM's

* audit fix

* Only add keys if they exist

* Throw exception if response code is not 200
2019-11-18 19:29:49 -03:00
Harrison Healey
725e9a6985 Merge branch 'master' into mark-as-unread 2019-11-18 17:21:42 -05:00
Elias Nahum
b2e657b159 MM-19991 Filtering search by channel should also show the channel name and not only its ID (#3561) 2019-11-18 23:56:01 +08:00
Elias Nahum
00874eb3ff MM-20007 Fix app crashes when previewing some gif files (#3563) 2019-11-18 10:31:29 -05:00
Elias Nahum
c68138150e Fix theme color for the more channel options (#3565) 2019-11-18 23:16:30 +08:00
Valentijn Nieman
759d1ce86d MM-19337 Enable users to view archived channels (#3514)
* Archived channels dropdown in more channels modal

* Rename redux actions for archived channels

* Fixed tests and updated snapshots

* Unit test for search in more_channels

* Use translation for dropdown label

* Minimum server requirement for dropdown

* Use BottomSheet instead of Picker component

* loadPublicAndArchivedChannels action instead of separate channel get actions

* Add styles to StyleSheet

* Update mattermost-redux hash

* Update mattermost-redux hash

* Default case for switching channels dropdown

* Improve imports in more_channels.js component

* Fix typo in import

* Add padding to dropdown if landscape

* Update snapshot

* Page counter for public and archive channels

* Updated mattermost-redux commit hash

* Bottom sheet title for ios

* i18n-extract for new showArchived and showPublic strings

* Update mattermost-redux commit hash to latest master
2019-11-18 22:38:30 +08:00
Elias Nahum
17a7054ae6 MM-19993 Fix Channel spinner is black on dark theme (#3558) 2019-11-18 22:04:52 +08:00
CJ
0204722627
MM-19037 Updated Progressive Image Loader (#3414)
* MM-19037 Updated Progressive Image Loader

Set the return for the listener to return a null for hte loader images, stopping the component from thinking it had a loaded image on a failure.

Also enabled the thumbnail to make an additional attempt to load when it receives the null response.

* MM-19037 Updated Eslint

Eslint issue resolved

* MM-19037 Add Unit Tests

Added Unit tests

* empty commit
2019-11-17 23:35:44 -05:00
Kaiden Sin
a1c8a4691e [mm 15792] Fix massive app slowdown with many emojis (#3209)
* [MM-16593] [MM-17175] [MM-17164] [MM-17189] [MM-17181] Android - Upgrade to RN 0.60 (#3145)

* Upgrade to react-native 0.60

* Use @sentry/react-native

* Manually link @sentry/react-native

* Address review comments

* Jetify after install

* Call jetify from node_modules

* Run npm install react-native-fast-image --save

* Link react-native-fast-image for Android

* Link react-native-fast-image to iOS Pod

* Replace Image with FastImage in emoji.js and remove redundant caching

* Remove duplicate sentry gradle

* Feedback review

* Remove FastImage and Sentry from the Podfile
2019-11-17 23:34:39 -05:00
CJ
c7cdce01fa MM-18054 Checked for prev post comment line (#3523)
* MM-18054 Checked for prev post comment line

Added check for prev post to stop the "Commented on" line when in same thread.

* MM-18054 Added Unit Tests

Added Unit Tests

* MM-18054 Update props

Updated the prop for isFirstReply
2019-11-17 20:33:14 -08:00
Elias Nahum
c5cf784c76 MM-19600 Align Sidebar separator line between Teams and Channel view (#3559) 2019-11-17 15:02:04 -07:00
Amit Uttam
66a6e5c932 [MM-10813] Design update for Post attachments (#3511)
* [MM-10813] Design update for Post attachments

Fixes https://github.com/mattermost/mattermost-server/issues/12841

* Updated visual treatment for Post attachments (images, documents, videos)
* Grouped image attachments, expanding to fit Post width dimension
* Itemized listing of non-image attachments
* Special handling of "small" image attachments (<48 point width/height)

* Set attachment post width to max width of portrait orientation

Accounts for post display offset and extra spacing used for rendering post replies.

* Use available Post real estate: flex: 1 instead of width 100%

* Image spacing responsibility: AttachmentList -> AttachmentImage

* Fit download progress circle correctly over new attachment icons

* Layers progress circle over the icon, rather than under.
* Uses offset constant as far as possible, rather than fixed point spaces.

* Refactor props and 'more' counting for image file attachment(s)

* Implement conditional gutter between image attachments

Flex's `justifyContent: space-between` won't work in this case because of the use of `absoluteFill` and `paddingBottom: 100%` in the box placeholder for an image attachment to auto-fill *all* available flex space.

* Additional snapshots for Post file attachment scenarios

* Use new 'text' icon for text files (.txt, .rtf)

Depends on https://github.com/mattermost/mattermost-redux/pull/979

Even without the change to mattermost-redux above, text files will default to pre-existing "code" icon.

* Set file attachment icon background to theme

Default to transparent. Override if explicitly specified.

* Treat animated GIFs as images when auto-adjusting attachment width

* Fix images layout, progressive image margins, and gallery for images and videos

* fix on iPad (splitview, permanent sidebar) card types and image sizes

* Add all files back to the gallery
2019-11-15 22:41:09 -05:00
CJ
82d4d88ea5 MM-19697 - Fixed CameraRoll for iOS (#3537)
* MM-19697 - Fixed CameraRoll for iOS

Switched CameraRoll over to the react-native-community version as it was removed from the core package with RN 0.61.2

* MM-19697 - Fix Jest issues

Updated for jest issues
2019-11-15 09:55:08 -05:00
CJ
7f031d9b55 MM-19696 Added font color for GlobalStyle Input (#3536)
Added the default color #3d3c40 for the GlobalStyle Input that the Server select and Login screen used for style.
2019-11-15 17:25:25 +08:00
Elias Nahum
6610a51a3d Fix partially shown drawers when orientation change on iOS (#3555) 2019-11-14 20:21:17 -07:00
Christopher Speller
96b78adf45
Adding ability to disable attachment buttons and fields. (#3541)
* Adding ability to disable attachment buttons and fields.

* Revert package lock

* Use changeOpacity
2019-11-14 10:32:08 -08:00
Harrison Healey
ef162ce403 Merge branch 'master' into mark-as-unread 2019-11-13 19:34:06 -05:00
Elias Nahum
dc830c56be
MM-20149 Fix marking channels as read (#3549)
* MM-20149 Fix marking channels as read

* empty commit
2019-11-13 13:38:20 -05:00
CJ
78cbcf1437 MM-19966 Fixed Notification Settings (#3535)
* MM-19966 Fixed Notification Settings

Fixed the save functionality for props. There was a change to combine notification settings that then did a deep comparison on two like objects. This change makes the comparison of the newly changed notification props and the previous props.

* Fix unit test
2019-11-12 17:48:14 -05:00
Miguel Alatzar
04210b8a14 [MM-19968] Ensure SELECT_CHANNEL_WITH_MEMBER is dispatched when app opened from a push notification (#3533)
* Dispatch SELECT_CHANNEL_WITH_MEMBER

* Call handleSelectChannel with true when from any push notification

* Always dispatch SELECT_CHANNEL_WITH_MEMBER with passed channelId

* Add missing comma

* Update unit tests

* Fix makrChannelViewedAndRead call
2019-11-12 17:45:11 -05:00
Harrison Healey
1593c62750 Merge branch 'master' into mark-as-unread 2019-11-12 15:51:41 -05:00
Harrison Healey
ddea1dedbe MM-19812 Properly handle in-app update_badge notifications (#3531) 2019-11-11 12:46:24 -07:00
Miguel Alatzar
5360989336 [MM-19927] Fix launching app from push notification on iOS (#3527)
* Call getInitialNotification on configure

* Mock getInitialNotification
2019-11-07 14:47:52 -05:00
Harrison Healey
e69bec46a9 Merge branch 'master' into mark-as-unread 2019-11-07 11:22:55 -05:00
Miguel Alatzar
f2c47def31
[MM-19841] Keep currentTeamId and team theme preferences when resetting state (#3519)
* Keep currentTeamId and team theme preferences

* Missing semicolon

* Update mattermost-redux commit
2019-11-06 15:00:50 -07:00
Harrison Healey
cf8e807e3f Merge branch 'master' into mark-as-unread 2019-11-05 11:27:59 -05:00
CJ
a5b4375aa5 MM-19599 Updated Channel Nav Bar height (#3509)
During the landscape changes from the previous release, I had added 8px of padding to the iOS landscape, which caused this issue to occur. This change reverts the added padding so that the height matches across the screens for the navigation bar.

To note, react-native-navigation is used for the info/thread headers and there is no way to adjust the height of this without replacing the header entirley.
2019-11-04 17:29:50 -07:00
Elias Nahum
11ddd66809 MM-19853 Fix iOS SafeAreaView for Server URL screen (#3513) 2019-11-04 14:59:23 -07:00
Harrison Healey
af2e8b7795 Merge branch 'master' into mark-as-unread 2019-11-04 15:08:49 -05:00
Deepak Sah
9708fb583c [MM-18768] Remove deprecated lifecycle methods from channel info (#3377)
* Removed deprecated method componentWillReceiveProps

* Moved updateChannelRequest to state

* Added static to getDerivedStateFromProps method

* Fixed build errors

* Removed getDerivedStateFromProps and Refactored code

* updating updateChannelRequest inside state

* Added getDerivedStateFromProps

* Refactored code
2019-11-04 09:49:14 -05:00
Miguel Alatzar
0ab53505af
Ensure setNavigatorStyles is called with Channel componentId (#3515) 2019-11-03 12:04:05 -07:00
CJ
42560ca047
MM-18934 Fix padding on image attachment border (#3466)
* MM-18934 Fix padding on image attachment border

Removed padding from image padding as it was pushing the images outside of the box.

* MM-18934 Add spacing between border and image

Added a margin to progressive image to allow for a spacing with the absolutefill

* MM-18934 Fixed eslint

Fixed eslint issues
2019-10-31 11:29:08 -04:00
Maria A Nunez
8f4d5ad260 Reverted mention color to user linkColor (#3472) 2019-10-31 08:27:16 -07:00
Harrison Healey
d59b62daf8 Merge branch 'master' into mark-as-unread 2019-10-31 09:15:13 -04:00
Miguel Alatzar
7ee5e93f8b
Fix failing snapshots (#3498) 2019-10-30 17:03:30 -07:00
Maria A Nunez
7c50b805fe
MM-19759 - Added TOS and Privacy Policy default links in About… (#3491) 2019-10-30 14:11:14 -04:00
Elias Nahum
c8ee8fc2dd MM-19733 fix posts getting behing post text box in thread screen (#3480)
* MM-19733 fix posts getting behing post text box in thread screen

* Update app/components/safe_area_view/safe_area_view.ios.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* Update app/components/safe_area_view/safe_area_view.ios.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* Small refactor

* Fix snapshot test after merge
2019-10-30 11:37:26 +01:00
Elias Nahum
f16d8baf46 MM-19731 Fix at-channel autocomplete to return out of channel mentions (#3477)
* MM-19731 Fix at-channel autocomplete to return out of channel mentions

* profiles not in channel test deleted use case

* fix typo
2019-10-29 22:22:28 -04:00
Miguel Alatzar
a142e8e168
Include previous notify props when saving new ones (#3482) 2019-10-29 16:43:39 -07:00
Harrison Healey
bf68a33bab Merge branch 'master' into mark-as-unread 2019-10-29 10:00:22 -04:00
Miguel Alatzar
2e12fad821 Fix failing snapshot tests (#3486) 2019-10-29 09:22:48 -04:00
Miguel Alatzar
1efb01deda
[MM-16593] Upgrade to RN 0.61.2 (#3455)
* [MM-16593] [MM-17175] [MM-17164] [MM-17189] [MM-17181] Android - Upgrade to RN 0.60 (#3145)

* Upgrade to react-native 0.60

* Use @sentry/react-native

* Manually link @sentry/react-native

* Address review comments

* Jetify after install

* Call jetify from node_modules

* [MM-17785] iOS - Upgrade to RN 0.60 (#3153)

* Upgrade to react-native 0.60

* Use @sentry/react-native

* Manually link @sentry/react-native

* Address review comments

* Jetify after install

* Call jetify from node_modules

* Get app building for iOS

* Revert react-native-image-picker upgrade

* Minor version upgrade of react-native-image-picker

* [MM-17142] Convert all string refs to callbacks (#3217)

* Replace string refs

* Fix tests

* Don't use inline functions

* Fix mattermost-redux reversion from master merge

* [MM-18336] Upload Sentry debug symbols only when SENTRY_ENABLED is true (#3227)

* Upgrade @sentry/react-native

* Run Sentry gradle tasks only when enabled

* Upgrade @sentry/react-native and remove extra Sentry build phase

* [MM-17144] Use Hermes (#3226)

* Replace string refs

* Fix tests

* Don't use inline functions

* Fix mattermost-redux reversion from master merge

* Use Hermes

* bundleCommand ram-bundle no longer needed

* Require harmony-reflect only for Android

* Fix failing test

* Path react-native's splitLayoutProps (#3337)

* [MM-18867] [MM-17186] [MM-18866] [MM-19447] [MM-18967] Upgrade to RN 0.61.2 (#3423)

* Upgrade to RN 0.61.2

* Update rn-fetch-blob commit hash

* Update react-native-keyboard-tracking-view commit hash

* Use react-native-youtube with AVPlayer fix

* Fix jest mocks

* Use updated document picker API

* Remove unnecessary linking

* Revert "MM-17759 Add code highlighting (#3072)"

This reverts commit 26b999e885.

* Fix share extension

* Revert "Revert "MM-17759 Add code highlighting (#3072)""

This reverts commit 52aca776b12dee3abe8646d0c90480f8528e86c1.

* Address PR reviews

* Rename patch to match version

* Update react-native-youtube patch

* Update dependencies

* Fix RNDocViewer reference

* Update tests and revert to redux-persist 4.10.2

* Revert "Revert "Revert "MM-17759 Add code highlighting (#3072)"""

This reverts commit 5ef383be2619b1be6167c23f128ecb4b4ad25df9.

* Android fixes after dep upgrades

* Use fresco 2.0.0

* Use mattermost forks

* Use React-Core in Mattermost.scheme instead of react

* Remove packager (#3452)

* Remove Pods from source control

* Fix unit tests

* Add new line before entering the keystore in gradle.properties

* set ios as working directory for cocoapods

* Cache cocoapods on circleCI builds

* set ios as working dir

* fix cocoapods cache key

* Unify fastlane and npm dependencies command

* Use package-lock.json checksum for npm cache

* Fix package.json and use the checksum as the cache key

* Fix package.json and use the checksum as the cache key

* changes to circleci.yaml fastlane and removing pods from git

* Fix Mattermost.xcodeproj

* Update coocoapods to 1.7.5 and fix xcode header search paths

* Update package-lock.json

* Remove unused tooltip component

* Fix incorrect ref

* Disable Hermes (#3460)

* Revert "Remove packager (#3452)"

This reverts commit b2a79e184b3242124dfdb91ae095f6ce3f4eb986.

* Disable Hermes :'(

* Update preloaded modules

* Fix packages moduleNames and modulePaths, update snapshots and update mm-redux (ts version)

* remove document picker from modulePaths

* Fix package-lock.json

* Add eslint disable rules
2019-10-28 15:04:24 -07:00
CJ
558f6ad280 MM-19308 Fixed date wrapping (#3445)
* MM-19308 Fixed date wrapping

Updated the displayName to check for the reply button and bot tag. If seen the displayName container is set from 60% to 55% to allow for the extra space.

* MM-19308 Updated logic and added tests

Updated logic based on feedback.
Added Jest/Snapshots

* MM-19308 Apply change to other sections

Applied the change to autoresponder/webhook section.
2019-10-28 18:22:50 +02:00
Miguel Alatzar
ec0be38217 [MM-17746] Map currentUser from state to props in NotificationSettingsEmail (#3357)
* Map currentUser from state to props

* Fix ref warning

* Use optional chaining operator

* Use componentDidUpdate

* Don't forget to call super
2019-10-27 09:39:15 +02:00
Amit Uttam
349dbf9194 MM-13842 Add Autocomplete to post edit screen (#3295)
Fixes https://github.com/mattermost/mattermost-server/issues/10159
2019-10-26 13:53:17 +03:00
Woolim Cho
2ebe516296 Add pinnedpost count to channel info screen (#3290) 2019-10-26 10:27:47 +02:00
Amit Uttam
0f3728a185 MM-13413 Make user names in system messages tappable (#3376)
Opens profile pop-over for:
* User changed channel purpose
* User changed channel name
* User changed channel header
* User archived channel
2019-10-26 10:25:53 +03:00
Elias Nahum
64d22fd0f2 MM-18313 Fix update timezone automatically (#3462)
* MM-18313 Fix update timezone automatically

* add unit tests
2019-10-25 08:01:32 -07:00
Miguel Alatzar
1bde8ed4dc [MM-18983] Store insets in ephemeral store (#3457)
* Store insets in ephemeral store

* Address PR review
2019-10-25 14:50:13 +03:00
Miguel Alatzar
4c872283ca
[MM-18532] Remove reactions from long post screen (#3447)
* Remove reactions from long post screen

* Remove reaction post option

* Update app/screens/long_post/long_post.test.js

Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>

* Update snapshot test
2019-10-24 14:01:44 -07:00
Harrison Healey
434af8d637 Revert snapshot changes 2019-10-24 16:11:39 -04:00
Elias Nahum
ee2a25df84
Fix iOS crash when pasting large images and included other file types (#3424)
* Fix iOS crash when pasting large images and included other file types

* Rename pasteImages to pasteFiles and fix copying heic images

* remove comment

* Feedback review
2019-10-24 20:41:38 +03:00
Harrison Healey
c27e96579f Merge branch 'master' into mark-as-unread 2019-10-23 17:25:48 -04:00
Miguel Alatzar
5e5d3abd79 [MM-17145] [MM-18947] [MM-17110] [MM-14926] [MM-18646] Use patched v2.0.6 of react-native-notifications and fix Android badge number (#3382)
* Refactor custom push notification code

* Use react-native-notifications 2.0.6 and patch for scheduled notifs

* Fix patch

* iOS changes

* Fix delete

* Fix setting of badge number on Android

* Undo Reflect removal

* Undo removal of didReceiveRemoteNotification

* Use min importance for push notifs received while app is active

* Correctly set badge number after push notificaiton reply

* Fix tests

* Localize reply action text

* Add getDeliveredNotifications

* Fix identifier check and failing test

* Fix local push notif test for Android > 9
2019-10-22 21:18:59 +03:00
Romain FOYARD
b910786002 Remove deprecated lifecycle methods from misc components (#3426)
* Remove deprecated lifecycle methods from misc components

* Fixed linting errors
2019-10-22 03:20:58 +03:00
CJ
e69b7c46ba
MM-18790 Fix Keyboard Color Flash (#3380)
* MM-18790 Fix Keyboard Color Flash

Resolved the autoresponder keyboard flash by adding a 500ms delay to the keyboard focus, allowing for a smooth keyboard interaction without the color flash.

* MM-18790 Used CreateRef

Updated the reference to React.createRef

* Update app/screens/settings/notification_settings_auto_responder/notification_settings_auto_responder.js

Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>

* MM-18790 Added check for current

Updated the focus check to validate current is truthy
2019-10-21 16:56:58 -04:00
Bryan Culver
4f1211a586 MM-19328 | Add accessibility label to channel drawer button. (#3448)
* MM-19328 | Add accessibility label to channel drawer button.

* MM-19328 | Add accessibility hint and role to channel drawer button.
2019-10-21 23:01:17 +03:00
Miguel Alatzar
1fbf0d28d3
[MM-19084] Apply theme change for all components when theme changes (#3415)
* Apply theme change for all components when theme changes

* Remove unnecessary snapshot test
2019-10-21 12:11:56 -07:00
Miguel Alatzar
8137b8575a
[MM-18983] Listen to safeAreaInsetsForRootViewDidChange over Dimension change (#3413)
* Listen to safeAreaInsetsForRootViewDidChange over Dimension change

* Add snapshots
2019-10-21 11:52:32 -07:00
Harrison Healey
9b758417d4 Update mattermost-redux 2019-10-21 13:39:38 -04:00
Harrison Healey
f318521663 Merge branch 'master' into mark-as-unread 2019-10-17 13:50:08 -04:00
Miguel Alatzar
90574d2fc5
Rename IOSX_TOP_PORTRAIT (#3412) 2019-10-17 07:58:18 -07:00
Harrison Healey
4899c2f769 Merge branch 'master' into mark-as-unread 2019-10-16 11:21:02 -04:00
Michael Kochell
4dc6a0fe5c [MM-19307] Make LHS channel item display name not overlap with mention count (#3417)
* make channel item display name more narrow, so it does not run into the mention count

* Update snapshot
2019-10-15 09:52:25 -04:00
CJ
ca75e2407b MM-19286 Disable Haptic Feedback (#3402)
* MM-19286 Disable Haptic Feedback

Added a check for iOS version <=9 and for iPhones 5/6/SE versions that don't support haptic feedback.

* MM-19286 Fixed the Fix

Misread the repo for the haptic feedback so fixing the fix.

* MM-19286 Removed line in device.js

Removed line in device.js
2019-10-15 10:32:10 +03:00
CJ
b43638b728
MM-18935 (#3346)
Added SafeAreaView padding for the SSO screen
2019-10-12 01:34:28 -04:00
CJ
0d7d1b7542
MM-18054: Removed Commented On from new messages in thread with same poster (#3351)
* MM-18054:

Added a check for previousPost to use in validating new messages in thread to check if we should display Commented On message.

* MM-18054 Updated

Updated the check for Commented line to validate the previous thread was one that the post user commente on.

* MM-18054 Fixed Eslint Issues

Fixed Eslint Issues

* MM-18054 Fixed Eslint Issues

Missed a space...

* MM-18054 Cleanup

Cleaned up some code from suggestions
2019-10-12 01:31:55 -04:00
CJ
ff3ba8ea01
MM-18791 (#3347)
Added marginHorizontal spacing to the footer for sections.
2019-10-12 01:30:59 -04:00
CJ
55f048ad76
MM-18173 Removed getState from Add Channel Member method (#3371)
Removed getState from Add Channel Member method since the Redux store is not looking for it. 3rd param for this method is a postRootID, which is not sent from this request.
2019-10-12 01:30:03 -04:00
CJ
a2a7a43e92
MM-18829 Updated Channel Header SafeAreaView (#3370)
Removed the RN SafeAreaView and applied the padding for our iOS X specific setting.
2019-10-11 22:14:07 -04:00
Harrison Healey
10c3ede26e Revert "Revert accidentally merged changes from mark-as-unread branch (#3405)"
This reverts commit 00356ad543.
2019-10-11 16:10:57 -04:00
Michael Kochell
1b16861174
[MM-19243] Disable reactions on read only channel (#3404) 2019-10-11 08:25:47 -06:00
Harrison Healey
00356ad543
Revert accidentally merged changes from mark-as-unread branch (#3405)
* Revert "Update mattermost-redux"

This reverts commit 04b3897ecb.

* Revert "[MM-17068] Add set post as unread option to menu (#3202)"

This reverts commit c7a29eea6a.
2019-10-11 09:28:09 -04:00
Jesús Espino
d48610407a
Not show the guest badge for system messages (#3393) 2019-10-11 15:24:45 +02:00
Miguel Alatzar
9fa06c45d6
[MM-17381] Await dismissModal before calling showSearchModal (#3362)
* Add unit tests

* Await dismissModal
2019-10-10 20:31:54 -07:00
Elias Nahum
d4c682bddd
MM-17157 Only send notification receipt if server url and session token are set (#3375) 2019-10-10 08:48:38 +03:00
Miguel Alatzar
9507cdf4ef
Fix failing snapshot test and package-lock.json (#3401) 2019-10-09 13:43:32 -07:00
Andre Vasconcelos
2f18a0b961 Fixing mention text color (#3372)
* Fixing mention text color

* Updating snapshots

* Update package-lock.json

* Adding highlight link color to other highlight types
2019-10-09 12:44:02 -07:00
Michael Kochell
e137b46573
[MM-19045] Do not focus search box after clicking a hashtag (#3356) 2019-10-09 09:30:17 -06:00
Asaad Mahmood
1837dd1167 MM-19180 - Updating spacing for mentiosn component (#3384) 2019-10-09 11:16:47 -04:00
Jesús Espino
d7971666c8
Fixing DMs guest label behavior (#3383)
* Fixing DMs guest label behavior

* Adding tests

* Addressing PR review comments
2019-10-09 11:45:31 +02:00
Miguel Alatzar
b1b7fa06cd
Pass fileInfoContainer style directly to Touchable (#3379) 2019-10-08 18:56:16 -07:00
Andre Vasconcelos
1413e66c36 GH-11948 Adding expand button to markdown tables (#3280)
* WIP: Adding expand button to markdown tables

* Moving padding to styleSheet
2019-10-08 18:55:08 -07:00
Elias Nahum
1b8962a024
MM-19185 Fix tab for UnreadIndicator on Android (#3368)
* MM-19185 Fix tab for UnreadIndicator on Android

* update snapshots
2019-10-08 17:34:56 +03:00
Elias Nahum
ed11cf9b6b
Fix running mm-i18n that crashes on conditional operators (#3385) 2019-10-08 15:13:03 +03:00
Harrison Healey
2be9285c26 Merge branch 'master' into mark-as-unread 2019-10-07 10:02:38 -04:00
Elias Nahum
c8e2a66f9f
Fix native emojis being cutoff in emoji picker (#3358) 2019-10-07 09:11:53 +03:00
Miguel Alatzar
a5b096fd44
Update total to reflect number of children (#3367) 2019-10-04 15:06:22 -07:00
Harrison Healey
3f13c868f7 Merge branch 'master' into mark-as-unread 2019-10-03 09:28:30 -04:00
Elias Nahum
3e3c0b2469
Set Sidebar channel item display name opacity as 0.6 (same as webapp) (#3359) 2019-10-02 21:30:28 +03:00
Elias Nahum
f8f9064968
MM-18999 Fix search in: modifier to show the appropriate badge when n… (#3343)
* MM-18999 Fix search in: modifier to show the appropriate badge when needed for DM/GM

* feedback review

* fix eslint

* fix eslint disable rule
2019-10-02 21:30:13 +03:00
Miguel Alatzar
2cfb6f1136 [MM-18656] Update third party libraries to use WKWebView over UIWebView (#3353)
* Use updated react-native-keyboard-tracking-view

* Use updated react-native-device-info

* Use updated react-native-device-info and add new pod dependency
2019-10-02 11:02:06 -04:00
Paulo Bittencourt
be4bddc52a MM-15220 Support generic error message in interactive dialog (#3259) 2019-10-02 16:47:24 +02:00
Elias Nahum
2f65ff853d MM-18997 Fix More unread overlay preventing interactions (#3342) 2019-10-01 12:53:06 -07:00
Harrison Healey
35797e2564 Merge branch 'master' into mark-as-unread 2019-09-30 16:54:15 -04:00
Matheus Cardoso
26b999e885 MM-17759 Add code highlighting (#3072)
* Add code highlighting

* Fix code style

* Add unit tests

* Some layout adjustments and code style fixes

* Fix failing test

* Fix typo

* Fixed import style

* Update snapshot

* Fix test

* Remove comment

* Add react-native-syntax-highlighter to NOTICE.txt

* Remove duplicated key

* Fix color issue on Android

* Remove unnecessary style

* Fix top spacing on Android

* Add missing trailing comma

* Revert highlighting in Android full-screen code

* Fix margins on android full-screen code

* Fix top padding on Android full-screen code

* Fix font size on Android full-screen code

* Improve top spacing on iOS full-screen code

* Update package-lock.json

* Update package-lock.json

* Update react-native-syntax-highlighter

* Revert away code highlighting on Android code block
2019-09-30 22:52:45 +08:00
Joram Wilander
3f3a7630cc
MM-18832 Update message count string (#3349)
* Update message count string

* Update defaultMessage
2019-09-30 08:45:45 -04:00
Elias Nahum
b8998c676a
Fix channel navbar title displayName variable (#3344)
* Fix channel navbar title displayName variable

* Fix snapshots
2019-09-28 19:36:33 +03:00
CJ
2009999090 MM-18464 Interactive dialog renders out of safe area view on landscape orientation (#3335)
* MM-18464

Updated Dialog Items to support isLandscape for SafeArea View

* MM-18464 Updated SafeAreaView

Updated Autoselector Component

* MM-18464 Resolved Issues

Resolved issues for MM-18464

* MM-18464 Resolved Snapshot

Resolved snapshots
2019-09-27 14:44:48 -07:00
Elias Nahum
3b3a696a55 MM-18603 Fix post header to prevent overlaps (#3332)
* MM-18603 Fix post header to prevent overlaps

* Export BotTag and GuestTag
2019-09-27 17:16:36 -04:00
Elias Nahum
768bb9625a MM-18176 Fix network indicator stock after re-connect (#3329) 2019-09-27 13:42:28 -04:00
Harrison Healey
3e0189430b
MM-18762 Remove some usage of deprecated lifecycle methods (#3299)
* MM-18762 Remove some usage of deprecated lifecycle methods

* Only load ProgressiveImage when a URI changes
2019-09-27 09:16:21 -04:00
Elias Nahum
65e62371ab
Revert long post as ScrollView instead of View (#3333) 2019-09-27 01:30:51 +03:00
Miguel Alatzar
b96a38473c
[MM-18329] Add (you) suffix to self DM channel title (#3293)
* Add (you) suffix to self DM channel title

* Use FormattedText component
2019-09-26 07:51:43 -07:00
Miguel Alatzar
459801d10b
[MM-17560] Await dismissAllModals and popToRoot prior to calling showSearchModal (#3298)
* Patch react-native-navigation

* Make navigation actions regular functions

* Fix unhandled promise rejection warning

* Missing semicolons

* Mock navigation actions

* Add unit tests for navigation actions

* Place all patches in patches directory

* Fix channel_info snapshot test
2019-09-25 15:23:45 -07:00
Elias Nahum
9975a19b91
MM-18236 Prevent the post menu from triggering when using the back gesture (#3319)
* MM-18236 Prevent the post menu from triggering when using the back gesture in the thread screen

* Update snapshots

* Update app/components/touchable_with_feedback/touchable_with_feedback.ios.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* Update app/components/touchable_with_feedback/touchable_with_feedback.ios.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* Update app/components/post/post.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* Update app/components/touchable_with_feedback/touchable_with_feedback.ios.js

* Fix eslint
2019-09-26 00:19:49 +03:00
Elias Nahum
ecb9bde1fd MM-18740 Sync app badge number when opening a push notification (#3322) 2019-09-25 10:31:44 -07:00
Elias Nahum
9da5b234ed MM-18542 Fix file attachment scroll on tablets, MM-18732 Slow scroll in landscape & MM-18836 settings sidebar width (#3321) 2019-09-25 10:27:18 -07:00
CJ
67ae09f868 MM-18658 Edit Channel MaxLength (#3317)
Set MaxLength on Edit Channel Name.
Updated ViewTypes MaxLength from 22 to 64 for validation/errors.
2019-09-25 16:53:52 +03:00
Harrison Healey
c017913911 Merge branch 'master' into mark-as-unread 2019-09-25 09:06:21 -04:00
Elias Nahum
114a18c16d
MM-18453 Use native emojis (#3260)
* MM-18453 Use native emojis

* Remove unnecessary else statement

* Add support for builtIn emojis

* Fix Native emojis snapshot tests

* Set emoji text style from StyleSheet

* Remove unneded version check and try/catch

* Add builtIn emojis as custom emojis in emojiPicker

* Simplify emojiPicker lists and fix jumping section headers

* Update snapshots
2019-09-25 12:27:47 +03:00
Elias Nahum
218e104010 Fix paste files with multiple instances of post textbox (#3302) 2019-09-25 17:03:14 +08:00
Miguel Alatzar
0b044b62a5 [MM-18779] Reset moment local on logout (#3310)
* Reset moment local on logout

* Update app/selectors/i18n.js

Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>
2019-09-25 16:02:58 +08:00
Miguel Alatzar
8fd0a515a8
Null check on current (#3309)
* Null check on current

* Null check on current
2019-09-24 17:13:27 -07:00
Andre Vasconcelos
d9a3f6f20a Trimming display_name in delete/leave channel alerts (#3291) 2019-09-24 12:42:26 -07:00
Miguel Alatzar
6131c44dc2 [MM-18325] Properly determine if channel is archived (#3289)
* Properly determine if channel is archived

* Remove check on ownProps.channelIsArchived
2019-09-24 19:39:28 +03:00
Elias Nahum
9e3bd8555d MM-18758 Fix channel info row to be toggleable or with an chevron (#3297) 2019-09-24 10:58:06 -04:00
Harrison Healey
ca68f3a244 Merge branch 'master' into mark-as-unread 2019-09-24 09:41:48 -04:00
Andre Vasconcelos
7bd000d794 GH-11952 Adding option to convert public channel to private (#3230)
* Adding option to convert public channel to private

* Added unit tests, feedback alert with error handling, and new alert text

* Ensuring baseProps is never changed between channel_info tests

* Trimming the display_name on alerts

- Preventing extra empty spaces from being displayed on the alerts by trimming the variable
2019-09-23 18:39:15 -07:00
Elias Nahum
70102d2516 MM-18752 Rename constant to handle iPhone X and new iPhone 11 insets (#3296) 2019-09-23 13:08:32 -07:00
Harrison Healey
d46aebb2a4 Merge branch 'master' into mark-as-unread 2019-09-20 10:42:02 -04:00
Miguel Alatzar
20fb25df8d
Call scrollToIndex only when ref is set and index is in range (#3285) 2019-09-19 12:39:47 -07:00
Sudheer
0f67b47026 Revert "Call scrollToIndex only when ref is set and index is in range (#3282)" (#3284)
This reverts commit ecbbb3f0e5.
2019-09-19 11:39:52 -07:00
Miguel Alatzar
ecbbb3f0e5 Call scrollToIndex only when ref is set and index is in range (#3282) 2019-09-20 00:00:43 +05:30
Miguel Alatzar
faf97f9945
Ensure onAppStateChange runs only after GlobalEventHandler is configured (#3268) 2019-09-18 09:59:52 -07:00
Patrick Kang
760b92ceee Adds support for 'radio' type in interactive dialogs (#3212) 2019-09-18 15:35:32 +02:00
Devin Binnie
0db54cd3c2
[MM-18550] Force drawer to open to channel menu when new teams are added (#3266) 2019-09-18 09:22:55 -04:00
Elias Nahum
e9db272a9e Go to channel screen when tapping on a channel link (#3265) 2019-09-17 08:30:06 -07:00
Elias Nahum
0811fd7149
Fix crash accessing property of undefined teammate 2019-09-17 09:00:58 -03:00
Saturnino Abril
4d8fa314d1
MM-14273 Add boolean element support to interactive dialog (#3239)
* add boolean element support to interactive dialog

* determine landscape orientation by Dimension
2019-09-17 09:39:12 +08:00
Ewe Tek Min
0d1fd78263 MM-9599 Paste image from clipboard (#3084)
* Show image paste menu

* Get pasted image

* Add more info for file

* Add custom text input and add extension

* Dismiss contextual menu after paste image

* Group image info together

* Add max file check

* Fix max file size text

* Add PropTypes

* Add support for gif and tiff

* add onchange null check

* Use onPaste event

* Move get image info logic

* Clean up listener when no observer

* Add android upload

* Copy file from google docs

* Clean up file after upload

* Prevent text pasted in textbox if it's content uri

* Rename paste file thread

* Move on paste listener logic

* Remove the redundant data in ios

* Get realpath of item

* Clean up

* Only download for image

* Rename to custom text input

* Update RNPasteableEditTextOnPasteListener.java

* Handle for download image failed

* Fix eslint

* Fix test

* Allow multiple images to be pasted

* Remove additional null check

* Add managed control for Android

* Disable only copy, cut and paste

* Accept image in Android edit text

* Add comment for custom text input

* Do not upload when more than max file

* Stop uplaod when exceed file size

* Fix crash when clip data is null

* Return error to JS

* Move download file logic

* Remove console

* Add some tests

* Add test for handleUploadImages

* Add test for file_upload_item

* Use ImageCacheManager to cache remote images

* Fix crashes from one note

* Remove commented code

* Update test
2019-09-16 20:10:14 -03:00
Elias Nahum
da9be433e3
Fix snapshots 2019-09-16 20:06:10 -03:00
Elias Nahum
6853707ef2
MM-18335 Keep the icon badge in sync (#3246)
* MM-18335 Keep the icon badge in sync

* feedback review

* Update snapshot
2019-09-16 17:48:50 -03:00
Elias Nahum
0ef2156b3f MM-17953 Do not show deactivated users in autocomplete (#3251)
* MM-17953 Do not show deactivated users in autocomplete

* feedback review
2019-09-16 16:02:52 -04:00
Eric Sethna
2c4764bc88 Update session expiry push notification text (#3211)
* Update session expiry text

* Calculate the session expires in days to be displayed in the local notification

* Feedback review
2019-09-16 12:01:10 -07:00
Theo Gkourasas
30f91a3814 MM-15219 Added support for introduction text in interactive dialogs (#3222)
* MM-15219 Added support for optional introduction text in interactive dialogs

* Fixed margins in introduction text for interactive dialogs

* Created DialogIntroductionText component to render the introduction text.  Changed text color

* Changed DialogIntroductionText component to only render if a value is supplied
2019-09-16 09:22:59 -07:00
Elias Nahum
19e6b2a00e
[MM-18362] Sidebar improvements (#3223)
* sidebar lists displays past bottom safe area insets

* Sidebar animation speed

* Sidebar improvements

* Add status icons and avatars to mattermost font

* Bot icon the same size as other channel icons

* improvements to the channel badge

* Badge color and border

* More precision when showing more unread above

* Improve GM icon

* Fix badge on team sidebar

* Align channel sidebar badges

* alignments

* Fix tests

* Remove unnecessary isLandscape in main sidebar connector
2019-09-16 13:17:48 -03:00
Elias Nahum
d28aaf21a8 MM-18241 Fix emoji picker selection and added keyboard tracking on iOS (#3244)
* MM-18241 Fix emoji picker selection and added keyboard tracking on iOS

* Fix flatlist spacing on iOS when searching

* Fix snapshot
2019-09-15 20:31:54 -07:00
Harrison Healey
6fc8569266 MM-18466 Change recent date separators to yesterday/today (#3245)
* MM-18466 Change recent date separators to yesterday/today

* Add i18n strings
2019-09-14 07:02:51 -03:00
Guillermo Vayá
c7a29eea6a [MM-17068] Add set post as unread option to menu (#3202)
* [MM-17068] Add set post as unread option to menu

* [MM-17068] Fix tests

* [MM-17068] add english assets

* [MM-17068] Add bookmark icons for marking as unread

* [MM-17068] reorder menu items

* [MM-17068] fix snapshots

* [MM-17068] merge my post options and others post options
2019-09-13 14:53:18 -04:00
Elias Nahum
cbb20d759f MM-18353 Do not update the theme when resetting the cache (#3250) 2019-09-13 09:38:44 -05:00
Miguel Alatzar
b795a0bba4 [MM-18361] Style text inputs and post options with theme (#3213)
* Style text inputs with theme

* Add snapshot test

* Use theme for post options background and text colors

* Use theme for post options icon color

* Use theme for reaction list

* Use theme for slide up indicator

* Fix post options localization

* PM Feedback review

* Slideup PM changes and channel edit

* fix tests

* Fix i18n
2019-09-13 10:24:36 -03:00
Joram Wilander
59d75eeb87 MM-18226 Set moment timezone locale as needed to prevent moment and intl locale getting out of sync (#3238)
* Set moment timezone locale as needed to prevent moment and intl locale getting out of sync

* Update app/i18n/index.js

Co-Authored-By: Elias Nahum <nahumhbl@gmail.com>

* Updates per feedback
2019-09-12 16:51:22 +02:00
Miguel de la Cruz
72d1895bd3 [MM-18365] When searching for profiles, allow inactive (#3252) 2019-09-12 16:27:40 +02:00
Joram Wilander
a6a1c725aa MM-18372 Fix edit profile screen being dismissed when removing profile picture (#3240)
* Fix edit profile screen being dismissed when removing profile picture

* Fix test
2019-09-12 11:26:41 -03:00
Asaad Mahmood
2b7df2307c MM-18330 - Updating arrow prop (#3248) 2019-09-12 21:00:09 +08:00
Harrison Healey
4bb94195f1 MM-18465 Add proper flags when opening settings (#3242)
* MM-18465 Add proper flags when opening settings

* Fix undefined setPerformingAuthentication Function in emm_provider.
2019-09-11 23:57:07 -04:00
Nathan Friend
9ccde970fa GH-11994: Add support for footer and footer_icon in attachments (#3228)
This commit adds support for the footer and footer_icon fields that are
rendered at the bottom of message attachments.
2019-09-11 20:58:55 -04:00
Ewe Tek Min
f6c9c950c5 MM-12879 Fix iOS photo/camera permission denied prompt (#2904)
* Update Github issues link

* Update GH issue to permalink

* Add missing comma

* Fix ios not prompting alert after denied photo or camera permission

* Rename permission var

* Update text

* Change to correct text

* Update text for attachement button

* Update text for image_preview

* Fix test

* Integrate react-native-android-open-settings for storage permission denied

* Move react-native-android-open-settings

* Change all default permission denied message

* Revert "Merge remote-tracking branch 'upstream/master'"

This reverts commit 65187f8f98de4943103bdab4b39bd7e1ebd5a220, reversing
changes made to daca425676503a57936a5539b5b5fa68a6c5427e.

* Revert "Revert "Merge remote-tracking branch 'upstream/master'""

This reverts commit c82fa628d5addc1262353539c32b76c6a1130e83.

* Add NSPhotoLibraryAddUsageDescription description

* Fix bad import

* Lazy load react-native-android-open-settings

* Fix indent
2019-09-11 01:18:53 -03:00
Elias Nahum
076e518b11
Update webview library to remove deprecated API (#3233)
* Update webview library to remove deprecated API

* Remove unnecessary timeout
2019-09-10 15:33:19 -03:00
Devin Binnie
8f9255aa12
[MM-18174] Replicated missing user functionality for system messages from webapp in RN (#3219) 2019-09-10 13:04:54 -04:00
Devin Binnie
54acc584c3
[MM-18178] Removing caching of failed image loading attempts (#3231) 2019-09-10 12:45:41 -04:00
Elias Nahum
49991a57d4 MM-18223 Fix channel actions on combined sidebar (#3221) 2019-09-09 21:12:23 +08:00